本文转载自http://showmealone.i.sohu.com/blog/view/176377580.htm
删除asm_diskgroup中的一个磁盘组BACKUP后发现使用srvctl stop database 能够关闭数据库
但是使用srvtl start database 不能启动
我的情况是在一开始安装的时候主节点的库没起来
[oracle@rac02 bin]$ ./crs_stat -t
Name Type Target State Host
------------------------------------------------------------
ora....B1.inst application ONLINE OFFLINE
ora....B2.inst application ONLINE ONLINE
ora.RACDB.db application ONLINE ONLINE rac01
ora....SM1.asm application ONLINE ONLINE rac01
ora....01.lsnr application ONLINE ONLINE rac01
ora.rac01.gsd application ONLINE ONLINE rac01
ora.rac01.ons application ONLINE ONLINE rac01
ora.rac01.vip application ONLINE ONLINE rac01
ora....SM2.asm application ONLINE ONLINE rac02
ora....02.lsnr application ONLINE ONLINE rac02
ora.rac02.gsd application ONLINE ONLINE rac02
ora.rac02.ons application ONLINE ONLINE rac02
ora.rac02.vip application ONLINE ONLINE rac02
也报类似如下错误:
RKP-1001 : Error starting instance dbrac2 on node dbrac02
CRS-0215: Could not start resource ora.dbrac.dbrac2.inst.
单独使用sqlplus / as sysdba 执行startup数据库能单独启动
检查$ORACLE_HOME/dbs目录下的initdbrac1.ora文件,发现文件链接指向 +BACKUP磁盘组
解决办法:
1、从init.ora手工创建一份启动pfile文件
2、在+DATA磁盘上面创建spfile,如
create spfile='+DATA/initdbrac.ora' from pfile;
3、然后修改两个节点的pfile文件添加指向
SPFILE='+DATA/initdbrac.ora'
4、执行srvctl 命令修改spfile文件指向
srvctl modify database -d gfqhcrm -p '+DATA/initdbrac.ora' -s open
再次执行srvctl start database 就会发现数据库可以正常启动了