oracle数据库建库的几种方式

第一种 使用dbca图形建库
第二种使用dbca response file模式 silent模式建库,不需要图形界面
第三种使用脚本建库,就是create database sql语句建库,可以先用dbca创建一套scripts,然后用着套script创建数据库

dbca建库无法选择将system表空间创建成bigfile的模式 而脚本建库就可以
dbca可以在创建完数据库后将连接串添加到tnsname.ora里面,而手工建库需要手工添加

脚本建库可能会遇到的问题

一是如果我们运行过一次手工建库后,这个脚本/u01/app/orabase/admin/cdb1/scripts/postDBCreation.sql会在init.ora里面添加cluster_database=true,这样我们下次创建数据库还会失败,会碰到下面的错误

host echo cluster_database=true >>/u01/app/orabase/admin/cdb1/scripts/init.ora;
init.ora
cluster_database=true

ERROR at line 1:
ORA-01501: CREATE DATABASE failed
ORA-12720: operation requires database is in EXCLUSIVE mode

另外一个在手工建库的时候,就是
创建默认表空间的语句不能放在创建system表空间的语句之前

DEFAULT TABLESPACE BIG_TBS1 DATAFILE size 133G autoextend on next 1G maxsize unlimited

DATAFILE SIZE 112G AUTOEXTEND ON NEXT  1G MAXSIZE UNLIMITED

手工建库碰到的一个问题是instance无法在remote的节点上启动

这是因为有些目录在remote上没有创建

SQL> host /u01/app/orabase/21c/dbhome1/bin/srvctl start database -d cdb1;
PRCR-1079 : Failed to start resource ora.cdb1.db
CRS-5017: The resource action "ora.cdb1.db start" encountered the following error:
ORA-09925: Unable to create audit trail file
Linux-x86_64 Error: 2: No such file or directory
Additional information: 9925
. For details refer to "(:CLSN00107:)" in "/u01/app/gibase/diag/crs/slcm05adm04/crs/trace/crsd_oraagent_oracle.trc".

[oracle@slcm05adm04 ~]$ mkdir -p /u01/app/orabase
[oracle@slcm05adm04 ~]$ mkdir -p /u01/app/orabase/admin/cdb1/adump
[oracle@slcm05adm04 ~]$ mkdir -p /u01/app/orabase/admin/cdb1/dpdump
[oracle@slcm05adm04 ~]$ mkdir -p /u01/app/orabase/admin/cdb1/hdump
[oracle@slcm05adm04 ~]$ mkdir -p /u01/app/orabase/admin/cdb1/pfile
[oracle@slcm05adm04 ~]$ mkdir -p /u01/app/orabase/admin/cdb1/scripts
[oracle@slcm05adm04 ~]$ mkdir -p /u01/app/orabase/audit

手工建库存在的一个问题,就是一开始设置的ORACLE_HOME为GI_HOME,但是等后面开始建库的时候这个ORACLE_HOME并没有重新设置为ORACLE_HOME,所以可能会碰见下面的错误

SQL> spool /u01/app/orabase/admin/cdb1/scripts/CreateDB.log append
SQL> startup nomount pfile="/u01/app/orabase/admin/cdb1/scripts/init.ora";
ORA-39511: Start of CRS resource for instance '+ASM' failed with error:[223]
CRS-5702: Resource 'ora.asm' is already running on 'slcm05adm01'
CRS-0223: Resource 'ora.asm' has placement error.
clsrapi_start_asm:start_asmdbs status:223

这个错误可以通过修改cdb11.sh文件来实现
在运行创建数据库的语句之前将ORACLE_HOME修改过来

umask ${OLD_UMASK}
export ORACLE_HOME=/u01/app/orabase/21c/dbhome1
PERL5LIB=$ORACLE_HOME/rdbms/admin:$PERL5LIB; export PERL5LIB


另外一个手工建库的问题就是init.ora 里面有compatible参数,这个是过时参数,去掉就行了

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值