服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > 数据库技术 > Oracle技术 > DBA > 查看文档

oracle10g release 2手工建数据库步骤

  刚刚见好库,参考了好多文章,都是比较凌乱的,版本各异,自己总结如下。

  刚刚见好库,参考了好多文章,都是比较凌乱的,版本各异,自己总结如下。

  redhat ws3+oracle10g release 2

  oracle10gr2下手动创建数据库

  $su - oracle

  1.设置系统环境变量:

oracle_home=/home/oracle/product/10.2.0 oracle_base=/home/oracle

  2.系统规划:

  实例名称oracle_sid=test

  数据库名称:test

  3.手工创建如下目录:

/home/oracle/admin/test/cdump
/home/oracle/admin/test/bdump
/home/oracle/admin/test/udump
/home/oracle/admin/test/pfile
/home/oracle/oradata/test

  4.建立密码文件:

/home/oracle/product/10.2.0/bin/orapwd file=/home/oracle/product/10.2.0/dbs/orapwtest password=test

  5.修改参数文件:

  格式:/home/oracle/product/10.2.0/dbs/init.ora

  实例:/ home/oracle/product/10.2.0/dbs/inittest.ora

  内容如下:

large_pool_size=4194304
shared_pool_size=48265318
core_dump_dest='/home/oracle/admin/test/cdump'
db_block_size=8192
db_domain='com'
db_file_multiblock_read_count=16
db_name='test'
db_recovery_file_dest='/home/oracle/flash_recovery_area'
db_recovery_file_dest_size=2147483648
dispatchers='(protocol=tcp) (service=testxdb)'
job_queue_processes=10
open_cursors=300
pga_aggregate_target=12777216
processes=150
undo_management='auto'
undo_tablespace='undotbs1'
user_dump_dest='/home/oracle/admin/test/udump'
nls_date_format="mon dd yyyy hh24:mi:ss"
nls_date_language=american

  6.设置当前工作实例:

export oracle_sid=test

  7.登陆oracle:

>sqlplus “/ as sysdba”

  8.启动实例:

sql>startup nomount

  9.创建数据库的脚本:

create database test
logfile group 1 '/home/oracle/oradata/test/redo01.log' size 10m reuse,
group 2 '/home/oracle/oradata/test/redo02.log' size 10m reuse,
group 3 '/home/oracle/oradata/test/redo03.log' size 10m reuse
datafile '/home/oracle/oradata/test/test01.dbf' size 500m reuse
maxdatafiles 100
archivelog
character set utf8
national character set utf8
sysaux datafile '/home/oracle/oradata/test/sys01.dbf' size 230m autoextend on next 10m maxsize unlimited
undo tablespace undotbs1 datafile '/home/oracle/oradata/test/undo.dbf' size 100m
create temporary tablespace temp tempfile '/home/oracle/oradata/test/temp01.dbf'
size 100m autoextend on next 10m maxsize unlimited
create tablespace users datafile '/home/oracle/oradata/test/users01.dbf' size
500m autoextend on next 10m maxsize unlimited;
create user test identified by test default tablespace users;
grant connect,resource to test;
create tablespace rbs datafile '/home/oracle/oradata/test/rbs01.dbf' size 200m
reuse autoextend on next 5m
create tablespace tools datafile '/home/oracle/oradata/test/tools01.dbf' size
64m reuse autoextend on next 320k
create tablespace indx datafile '/home/oracle/oradata/test/indx01.dbf' size
32m reuse autoextend on next 1280k
create public rollback segment rbs0 tablespace rbs storage (optimal 4096k)
create public rollback segment rbs1 tablespace rbs storage (optimal 4096k)
create public rollback segment rbs2 tablespace rbs storage (optimal 4096k)
create public rollback segment rbs3 tablespace rbs storage (optimal 4096k)
alter rollback segment "rbs0" online
alter rollback segment "rbs1" online
alter rollback segment "rbs2" online
alter rollback segment "rbs3" online

  10.运行如下文件:

/home/oracle/product/10.2.0/rdbms/admin/catalog.sql
/home/oracle/product/10.2.0/rdbms/admin/catproc.sql

  11.经验总结:

  ①inittest.ora中的control_files关键字所指示的目录必需存在。

  ②inittest.ora中undo_tablespace中的名字必需与create database中的相同。我可是在这点上走了不少弯路啊。以前的建库过程总是出现ora-01092:oracle instance terminated.disconnection forced.郁闷至极不知如何解决。重装几次还是这样,最后仔细检查inittest.ora文件,发现undo_tablespace=’undotbs1’,而create database中undo_tablespace=’undotbs1’,大小写的差别浪费了我几天的时间。

  ③分析数据库出错可以到/home/oracle/admin/test/bdump目录下的alert_test.log中查找。

扫描关注微信公众号