这个问题的起因是创建一个Grid Infrastructure for Standalone的环境,但是不管是Grid软件的安装还是ASMCA图形化工具的运行都要求要首先创建一个ASM磁盘组,目的就是为了存放ASM磁盘组的参数文件,我就搞不懂了,Oracle为啥在单机环境下装Grid非要将参数文件存放到ASM磁盘组,这不是多此一举吗?
为了不让Oracle这个想法得逞只有手动创建ASM实例,然后将其注册到Clusterware的OCR中。如果在没有将ASM实例注册到OCR即创建SPFILE将收到一下的错误:《11gR2手动创建ASM实例ORA-29786错误解决方法》http://space.itpub.net/23135684/viewspace-743018
完成了以上注册操作之后,尝试使用Clusterware管理工具srvctl管理ASM的时候收到如下的报错:
# ./srvctl add asm -p '/u01/app/11.2.0/grid/dbs/spfile+ASM.ora' -d '/dev/rhdisk*'
# ./srvctl start asm
PRCR-1079 : Failed to start resource ora.asm
CRS-2674: Start of 'ora.asm' on 'ncappweb2' failed
CRS-2678: 'ora.asm' on 'ncappweb2' has experienced an unrecoverable failure
CRS-0267: Human intervention required to resume its availability.
CRS-5802: Unable to start the agent process
被这个错误折磨得很痛苦,最后居然发现是由于用root用户执行srvctl命令将ASM实例添加到OCR导致的问题。原因在于管理ASM实例的oraagent代理进程使用grid用户启动的(执行ps -ef | grep oraagent可以看到),所以会报CRS-5802的错误。执行如下的命令问题即得到解决:
总结:在Oracle RAC环境中,需要注意进程是用什么权限的用户启动和管理的!
被这个错误折磨得很痛苦,最后居然发现是由于用root用户执行srvctl命令将ASM实例添加到OCR导致的问题。原因在于管理ASM实例的oraagent代理进程使用grid用户启动的(执行ps -ef | grep oraagent可以看到),所以会报CRS-5802的错误。执行如下的命令问题即得到解决:
# su - grid
$ srvctl add asm -h
Adds an ASM configuration to be managed by Oracle Restart.
Usage: srvctl add asm [-l ] [-p ] [-d ]
-l Listener name
-p Server parameter file path
-d ASM diskgroup discovery string
-h Print usage
$ srvctl add asm -p '/u01/app/11.2.0/grid/dbs/spfile+ASM.ora' -d '/dev/rhdisk*'
$ exit
# su - grid
$ srvctl start asm
$ exit
# ./crsctl stat res -t
--------------------------------------------------------------------------------
NAME TARGET STATE SERVER STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.asm
ONLINE ONLINE ncappweb2 Started
ora.ons
OFFLINE OFFLINE ncappweb2
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.cssd
1 ONLINE ONLINE ncappweb2
ora.diskmon
1 OFFLINE OFFLINE
ora.evmd
1 ONLINE ONLINE ncappweb2
总结:在Oracle RAC环境中,需要注意进程是用什么权限的用户启动和管理的!
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/23135684/viewspace-743090/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/23135684/viewspace-743090/