虽然11gR2已经出来很久了,但是还是写出来给像我以下可能会遇到这个问题的同学。
这也算个经验吧。
RHEL6及其以上版本安装Clusterware 11gR1(11.1.0.6),在执行root脚本时会出现以下错误:
-
Failure at final check of Oracle CRS stack.
-
10
原因分析
在网上搜索可以能会找到:因为节点之间的防火墙没有关闭。但这里不是。
之所以会Fail是因为等待CRS demon失败。
在RHEL6之前,为了启动CRS服务,clusterware将以下内容写入 /etc/inittab 文件,然后执行 init q命令,以启动这些服务。
-
h1:35:respawn:/etc/init.d/init.evmd run >/dev/null 2>&1 </dev/null
-
h2:35:respawn:/etc/init.d/init.cssd fatal >/dev/null 2>&1 </dev/null
-
h3:35:respawn:/etc/init.d/init.crsd run >/dev/null 2>&1 </dev/null
但是到了RHEL6之后,系统改变了这种启动服务的方式,采用了一种叫做upstart的方式。一次我们可以在脚本等待的10分中内将这几个服务启动起来就好。
解决方案
我们的方法如下:
1. 创建文件
在/etc/init目录下创建以下文件:oracle-crsd.conf, /etc/init/oracle-cssd.conf, /etc/init/oracle-evmd.conf。文件内容如下:
-
[root@node1 tmp]# cat /etc/init/oracle-crsd.conf
-
# Copyright (c) 2001, 2011, Oracle and/or its affiliates. All rights reserved.
-
#
-
# Oracle CRSD startup
-
-
start on runlevel [35]
-
stop on runlevel [!35]
-
respawn
-
exec /etc/init.d/init.crsd run >/dev/null 2>&1 </dev/null
-
-
[root@node1 tmp]# cat /etc/init/oracle-cssd.conf
-
# Copyright (c) 2001, 2011, Oracle and/or its affiliates. All rights reserved.
-
#
-
# Oracle CSSD startup
-
-
start on runlevel [35]
-
stop on runlevel [!35]
-
respawn
-
exec /etc/init.d/init.cssd fatal >/dev/null 2>&1 </dev/null
-
-
[root@node1 tmp]# cat /etc/init/oracle-evmd.conf
-
# Copyright (c) 2001, 2011, Oracle and/or its affiliates. All rights reserved.
-
#
-
# Oracle EVMD startup
-
-
start on runlevel [35]
-
stop on runlevel [!35]
-
respawn
-
exec /etc/init.d/init.evmd run >/dev/null 2>&1 </dev/null
2. 执行以下命令
-
# initctl start oracle-evmd
-
# initctl start oracle-cssd
-
# initctl start oracle-crsd
稍等以下root脚本即可执行成功。
本文乃nnusun原创文章。如须转载请详细标明转载出处。
阅读(783) | 评论(0) | 转发(0) |