[root@rac1 root]# more /etc/oracle/scls_scr/rac1/root/ohasdstr
原因:
重启系统后,ohasd服务依然没有启动,更不用说启动CRS了。
这是因为从RHEL6开始,/etc/inittab文件内容变了,只有默认的启动等级。
而Oracle 11.2.0.1仍是按照以前的习惯把启动命令写在/etc/inittab文件中,造成ohasd服务不能自动启动。
解决的办法如下(2个节点均操作)
1.Oracle RAC 关于集群自启动的查看
从10g开始 CRS默认是从操作系统启动时候启动
有时候为了方便维护性操作我们一般禁止CRS随操作系统启动而自启动
无论是10g还是11goracle都支持通过命令方式禁止CRS随操作系统启动而自启动:
crsctl disable crs
crsctl enable crs
当我们开启或者关闭自启动后我们如何查看当前CRS 是处于enable还是处于disable?
oracle在10g,11gR1和11gR2中都分别给出了不同的路径文件查看
当我们开启或者关闭自启动后我们如何查看当前CRS 是处于enable还是处于disable?
oracle在10g,11gR1和11gR2中都分别给出了不同的路径文件查看
10g环境中:
Oracle Database – Enterprise Edition – Version 10.1.0.2 to 11.1.0.8 [Release 10.1 to 11.1]
Linux & AIX:/etc/oracle/scls_scr/$hostname/root/crsstart
SUN & HP:/var/opt/oracle/scls_scr/$hostname/root/crsstart
11gR2中
无论是crs还是css还是evmd进程都是通过ohasd进程带动,
在11g中略有不同虽然命令一样都是通过crsctl disable/enable crs关闭或者开启
但是其实oracle是对ohasd做了自启动限制,所以在11gR2中文件位置及文件名应该为如下。
cd /etc/oracle/scls_scr/s1-11g/root
Linux & AIX:/etc/oracle/scls_scr/$hostname/root/ohasdstr
SUN & HP:/var/opt/oracle/scls_scr/$hostname/root/ohasdstr
2.注释掉/etc/inittab文件的以下内容
h1:35:respawn:/etc/init.d/init.ohasd run >/dev/null 2>&1 </dev/null
3./etc/init/init-oracle.conf里添加如下内容(此文件刚开始不存在)
start oracle
start on runlevel [0123456]
stop on runlevel [016]
respawn
exec /etc/init.d/init.ohasd run >/dev/null 2>&1
保存退出,重启系统即可
补充:集群启停
find / -name crsctl
cd /u01/app/11.2.0/grid/bin
- 停止集群服务
一节点
[root@rac1 bin]# ./crsctl stop crs
二节点
[root@rac2 bin]# ./crsctl stop crs
- 启动集群服务
一节点
[root@rac1 bin]# ./crsctl stop crs
二节点
[root@rac2 bin]# ./crsctl stop crs