转载于http://blog.itpub.net/23135684/viewspace-759569/
某些时候在11gR2 RAC Database的环境下重启服务器之后,使用crsctl工具查看资源的状态,会发现database资源所有实例的TARGET和STATE值都为OFFLINE,数据库实例不能正常的自动启动,尝试执行以下的命令使得所有实例都能自动启动:
[root@rhel1 bin]# ./crsctl stat res -t
--------------------------------------------------------------------------------
NAME TARGET STATE SERVER STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.DBFILE1.dg
ONLINE ONLINE rhel1
ONLINE ONLINE rhel2
ora.FRA1.dg
ONLINE ONLINE rhel1
ONLINE ONLINE rhel2
ora.LISTENER.lsnr
ONLINE ONLINE rhel1
ONLINE ONLINE rhel2
ora.LISTENER2.lsnr
ONLINE ONLINE rhel1
ONLINE ONLINE rhel2
ora.OCR.dg
ONLINE ONLINE rhel1
ONLINE ONLINE rhel2
ora.asm
ONLINE ONLINE rhel1
ONLINE ONLINE rhel2
ora.gsd
ONLINE ONLINE rhel1
ONLINE ONLINE rhel2
ora.net1.network
ONLINE ONLINE rhel1
ONLINE ONLINE rhel2
ora.net2.network
ONLINE ONLINE rhel1
ONLINE ONLINE rhel2
ora.ons
ONLINE ONLINE rhel1
ONLINE ONLINE rhel2
ora.registry.acfs
ONLINE ONLINE rhel1
ONLINE ONLINE rhel2
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
1 ONLINE ONLINE rhel1
ora.LISTENER_SCAN2.lsnr
1 ONLINE ONLINE rhel2
ora.LISTENER_SCAN3.lsnr
1 ONLINE ONLINE rhel2
ora.cvu
1 ONLINE ONLINE rhel2
ora.oc4j
1 ONLINE ONLINE rhel2
ora.ractest.db
1 OFFLINE OFFLINE
2 OFFLINE OFFLINE
ora.ractest.rtser1.svc
1 OFFLINE OFFLINE
ora.rhel1.vip
1 ONLINE ONLINE rhel1
ora.rhel2.vip
1 ONLINE ONLINE rhel2
ora.rhelpub21-vip.vip
1 ONLINE ONLINE rhel1
ora.rhelpub22-vip.vip
1 ONLINE ONLINE rhel2
ora.scan1.vip
1 ONLINE ONLINE rhel1
ora.scan2.vip
1 ONLINE ONLINE rhel2
ora.scan3.vip
1 ONLINE ONLINE rhel2
从上面的状态可以看出,ractest数据库的ractest1和ractest2两个实例的TARGET和STATE值都为OFFLINE。执行以下的操作尝试改变这一状态:
[oracle@rhel1 ~]$ srvctl enable database -d ractest
[oracle@rhel1 ~]$ srvctl enable instance -d ractest -i ractest1
[oracle@rhel1 ~]$ srvctl enable instance -d ractest -i ractest2
[oracle@rhel1 ~]$ srvctl start database -d ractest
执行完以上操作之后,再次尝试重启服务器观察数据库实例是否自动启动。
注意:在RAC环境下,不要通过在sqlplus中执行shutdown的方式关闭数据库实例,这样可能导致Clusterware无法正常的管理数据库及实例资源。
另外,也可以参考一下文章: http://www.itpub.net/thread-1300493-1-1.html
如果以上的操作依然不能使数据库资源自动启动,那么参考下面这篇文章修改资源AUTO_START属性。
Oracle 10gR2 RAC 参考以下的内容修改资源AUTO_START属性。
使用命令 crs_register resource_name -update [option ...] [-o option,...] -q
如:修改资源ora.dbrac.dbrac2.inst 中 AUTO_START值 0,表示:启动到资源重启之前的状态
1,表示: 启动资源
2,表示:不启动资源
修改属性名称采用第一个字母表示,如 AUTO_START = as
#crs_register resource_name -update -o as=2
./crs_register ora.rkywk.db -update -o as=1
./crs_register ora.rkcxk.db -update -o as=1
crs_register ora.rkywk.db -update -o as=always
crs_register ora.rkcxk.db -update -o as=always
执行完以上操作之后,再次尝试重启服务器观察数据库实例是否自动启动。
注意:在RAC环境下,不要通过在sqlplus中执行shutdown的方式关闭数据库实例,这样可能导致Clusterware无法正常的管理数据库及实例资源。
另外,也可以参考一下文章: http://www.itpub.net/thread-1300493-1-1.html
如果以上的操作依然不能使数据库资源自动启动,那么参考下面这篇文章修改资源AUTO_START属性。
How to set auto start resources in 11G RAC
Changing Resource Attributes in 11gR2 Grid Infrastructure
In 11gR2 grid infrastructure installations certain resources may have auto start set to never and restore. This was observed both on environments where clusterware was upgraded to 11.2 as well as newly installed environments. Depending on the situation these may not be desirable. Auto start attribute setting could be changed as follows.
以上文章转载自:
http://oracleracdba1.wordpress.com/2013/01/29/how-to-set-auto-start-resources-in-11g-rac/
1. Check the current auto start values
# crsctl stat res -p NAME=ora.FLASH.dg TYPE=ora.diskgroup.type ACL=owner:oracle:rwx,pgrp:oinstall:rwx,other::r-- ACTION_FAILURE_TEMPLATE= ACTION_SCRIPT= AGENT_FILENAME=%CRS_HOME%/bin/oraagent%CRS_EXE_SUFFIX% ALIAS_NAME= AUTO_START=never NAME=ora.DATA.dg TYPE=ora.diskgroup.type ACL=owner:oracle:rwx,pgrp:oinstall:rwx,other::r-- ACTION_FAILURE_TEMPLATE= ACTION_SCRIPT= AGENT_FILENAME=%CRS_HOME%/bin/oraagent%CRS_EXE_SUFFIX% ALIAS_NAME= AUTO_START=never NAME=ora.clusdb.db TYPE=ora.database.type ACL=owner:oracle:rwx,pgrp:oinstall:rwx,other::r-- ACTION_FAILURE_TEMPLATE= ACTION_SCRIPT= ACTIVE_PLACEMENT=1 AGENT_FILENAME=%CRS_HOME%/bin/oraagent%CRS_EXE_SUFFIX% AUTO_START=restore
2. Since ASM diskgroup that database depend on will never auto start database will also be unavailable.
3. Change the resource start attribute with
# crsctl modify resource "ora.FLASH.dg" -attr "AUTO_START=always" # crsctl modify resource "ora.DATA.dg" -attr "AUTO_START=always" # crsctl modify resource ora.clusdb.db -attr "AUTO_START=always"
Auto start must be upper case if not command will fail
crsctl modify resource ora.clusdb.db -attr "auto_start=always" CRS-0160: The attribute 'auto_start' is not supported in this resource type. CRS-4000: Command Modify failed, or completed with errors.
4. Verify the status change with
# crsctl stat res -p NAME=ora.clusdb.db TYPE=ora.database.type ACL=owner:oracle:rwx,pgrp:oinstall:rwx,other::r-- ACTION_FAILURE_TEMPLATE= ACTION_SCRIPT= ACTIVE_PLACEMENT=1 AGENT_FILENAME=%CRS_HOME%/bin/oraagent%CRS_EXE_SUFFIX% AUTO_START=always
Oracle 10gR2 RAC 参考以下的内容修改资源AUTO_START属性。
使用命令 crs_register resource_name -update [option ...] [-o option,...] -q
如:修改资源ora.dbrac.dbrac2.inst 中 AUTO_START值 0,表示:启动到资源重启之前的状态
1,表示: 启动资源
2,表示:不启动资源
修改属性名称采用第一个字母表示,如 AUTO_START = as
#crs_register resource_name -update -o as=2
./crs_register ora.rkywk.db -update -o as=1
./crs_register ora.rkcxk.db -update -o as=1
crs_register ora.rkywk.db -update -o as=always
crs_register ora.rkcxk.db -update -o as=always