记一次oracle crs无法重启事故

今天在修改了数据库参数后,关闭数据库及crs,然后重新启动了服务器,服务器启动完成之后,发现数据库无法启动,过程如下:

step1:重启数据库

$ su - grid
$ srvctl stop database -d {DB_NAME} 


$ su - root
# cd /grid/11.2.0/grid/bin
# ./crsctl stop crs  #所有节点执行

step2:重启服务器:

xxxdb1#[/root]reboot

等服务器重启完成,发现crs起不来:

xxxdb1$[/home/grid]crs_stat -t
CRS-0184: Cannot communicate with the CRS daemon.

根据以前的经验,服务器起来后5分钟左右,crs即可启动完成。然而等待了15分钟,依然无法启动。

step3:于是请求协助,通过手动启动crs,发现crs启动了。

su - root
# cd $ORACLE_HOME/bin
# ./crsctl start crs      
CRS-4123: Oracle High Availability Services has been started.

经过大概4分钟的等待,数据库的资源起来了,这个过程较久,需要耐心等待

xxxdb1$[/home/grid]crsctl status res -t
--------------------------------------------------------------------------------
NAME           TARGET  STATE        SERVER                   STATE_DETAILS       
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.ARC.dg
               ONLINE  ONLINE       xxxdb1                                       
               ONLINE  ONLINE       xxxdb2                                       
ora.DAT.dg
               ONLINE  ONLINE       xxxdb1                                       
               ONLINE  ONLINE       xxxdb2                                       
ora.INX.dg
               ONLINE  ONLINE       xxxdb1                                       
               ONLINE  ONLINE       xxxdb2                                       
ora.LISTENER.lsnr
               ONLINE  ONLINE       xxxdb1                                       
               ONLINE  ONLINE       xxxdb2                                       
ora.OCRVOTE.dg
               ONLINE  ONLINE       xxxdb1                                       
               ONLINE  ONLINE       xxxdb2                                       
ora.asm
               ONLINE  ONLINE       xxxdb1                   Started             
               ONLINE  ONLINE       xxxdb2                   Started             
ora.gsd
               OFFLINE OFFLINE      xxxdb1                                       
               OFFLINE OFFLINE      xxxdb2                                       
ora.net1.network
               ONLINE  ONLINE       xxxdb1                                       
               ONLINE  ONLINE       xxxdb2                                       
ora.ons
               ONLINE  ONLINE       xxxdb1                                       
               ONLINE  ONLINE       xxxdb2                                       
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       xxxdb1                                       
ora.cvu
      1        ONLINE  OFFLINE                                                   
ora.xxxdb.db
      1        ONLINE  ONLINE       xxxdb1                   shutdown immediate                
      2        ONLINE  ONLINE       xxxdb2                   shutdown immediate                
ora.xxxdb1.vip
      1        ONLINE  ONLINE       xxxdb1                                       
ora.xxxdb2.vip
1        ONLINE  ONLINE       xxxdb2                                       
ora.oc4j
      1        OFFLINE OFFLINE                                                   
ora.scan1.vip
      1        ONLINE  ONLINE       xxxdb1                              

step4:启动数据库实例

srvctl start instance -d {oracle_name} -i {instance_name}

到这里,数据库是起来了,为什么开机crs未启动的原因还没找到,经过查看crs自启动参数,发现自启动为不可用(disable)状态

xxxdb1#[/grid/11.2.0/grid/bin]./crsctl config has
CRS-4622: Oracle High Availability Services autostart is disabled.

将其改为enable:

xxxdb1#[/grid/11.2.0/grid/bin]./crsctl enable crs

再次查看:

xxxdb1#[/grid/11.2.0/grid/bin]./crsctl config crs
CRS-4622: Oracle High Availability Services autostart is enabled.

 OK,crs无法自启动的问题解决完成。

原文地址:https://www.cnblogs.com/lijiaman/p/8443207.html