ITPub博客

首页 > 数据库 > Oracle > 【问题处理】因误修改inittab文件导致Oracle 10gR2 CRS无法启动

【问题处理】因误修改inittab文件导致Oracle 10gR2 CRS无法启动

原创 Oracle 作者:OCMU联盟 时间:2011-01-05 22:50:17 0 删除 编辑
1.问题现象
1)RAC环境的第一个节点手工启动CRS后没有反应,CRS无法启动。
[root@rac1 ~]# crsctl start crs
Attempting to start CRS stack
The CRS stack will be started shortly

长时间等待……

[root@rac1 ~]# crs_stat -t
CRS-0184: Cannot communicate with the CRS daemon.

CRS没启动成功。

查看后台与CRS相关的进程
[root@rac1 ~]# ps -ef | grep d.bin | grep -v grep
[root@rac1 ~]# ps -ef | grep init | grep -v grep
root         1     0  0 14:22 ?        00:00:01 init [5]

此处显示,没有与CRS相关的进程信息。

长时间等待没能等来CRS的成功启动。crsd日志和ocssd日志没有任何信息输出。
[root@rac1 ~]# tail -30f /u01/crs1020/log/rac1/crsd/crsd.log
注释:此处无新信息输出。

[root@rac1 ~]# tail -30f /u01/crs1020/log/rac1/cssd/ocssd.log
注释:此处无新信息输出。

2)RAC第二节点手工启动正常
[root@rac2 ~]# crsctl start crs
Attempting to start CRS stack
The CRS stack will be started shortly

[root@rac2 ~]# crs_stat -t -v
Name           Type           R/RA   F/FT   Target    State     Host
----------------------------------------------------------------------
ora....B1.inst application    0/5    0/0    ONLINE    OFFLINE
ora....B2.inst application    0/5    0/0    ONLINE    OFFLINE
ora.RACDB.db   application    0/1    0/1    ONLINE    ONLINE    rac2
ora....DB1.srv application    0/1    0/0    ONLINE    OFFLINE
ora....DB2.srv application    0/1    0/0    ONLINE    ONLINE    rac2
ora.....taf.cs application    0/1    0/1    ONLINE    ONLINE    rac2
ora....SM1.asm application    0/5    0/0    ONLINE    OFFLINE
ora....C1.lsnr application    0/5    0/0    ONLINE    OFFLINE
ora.rac1.gsd   application    0/5    0/0    ONLINE    OFFLINE
ora.rac1.ons   application    0/3    0/0    ONLINE    OFFLINE
ora.rac1.vip   application    0/0    0/0    ONLINE    ONLINE    rac2
ora....SM2.asm application    0/5    0/0    ONLINE    ONLINE    rac2
ora....C2.lsnr application    0/5    0/0    ONLINE    ONLINE    rac2
ora.rac2.gsd   application    0/5    0/0    ONLINE    ONLINE    rac2
ora.rac2.ons   application    0/3    0/0    ONLINE    ONLINE    rac2
ora.rac2.vip   application    0/0    0/0    ONLINE    ONLINE    rac2

[root@rac2 ~]# ps -ef | grep init | grep -v grep
root         1     0  0 14:16 ?        00:00:01 init [5]
root      3081     1  0 14:18 ?        00:00:05 /bin/sh /etc/init.d/init.cssd fatal
root      4767  3081  0 14:21 ?        00:00:00 /bin/sh /etc/init.d/init.cssd daemon

[root@rac2 ~]# ps -ef | grep d.bin | grep -v grep
root      3082     1  1 14:18 ?        00:00:23 /u01/crs1020/bin/crsd.bin reboot
oracle    4764  3080  0 14:21 ?        00:00:01 /u01/crs1020/bin/evmd.bin
oracle    4989  4942  0 14:21 ?        00:00:04 /u01/crs1020/bin/ocssd.bin

2.问题原因
如果细心观察上面的输出信息,便会找到问题的根源。问题节点上有关“init.*”的进程没有启动。
[root@rac1 ~]# ps -ef | grep init | grep -v grep
root         1     0  0 14:22 ?        00:00:01 init [5]

启动这些进程使用操作系统/etc/inittab文件来实现的。

3.问题处理
1)修复/etc/inittab文件
[root@rac1 ~]# vi /etc/inittab
……省略部分信息……
# Run xdm in runlevel 5
x:5:respawn:/etc/X11/prefdm -nodaemon
#h1:35:respawn:/etc/init.d/init.evmd run >/dev/null 2>&1
#h2:35:respawn:/etc/init.d/init.cssd fatal >/dev/null 2>&1
#h3:35:respawn:/etc/init.d/init.crsd run >/dev/null 2>&1

将最后三行前面的注释符号“#”去掉,修改后如下:
# Run xdm in runlevel 5
x:5:respawn:/etc/X11/prefdm -nodaemon
h1:35:respawn:/etc/init.d/init.evmd run >/dev/null 2>&1
h2:35:respawn:/etc/init.d/init.cssd fatal >/dev/null 2>&1
h3:35:respawn:/etc/init.d/init.crsd run >/dev/null 2>&1

2)重新加载/etc/inittab
[root@rac1 ~]# init q
[root@rac1 ~]# ps -ef | grep init | grep -v grep
root         1     0  0 14:22 ?        00:00:01 init [5]
root      3419     1  5 14:51 ?        00:00:00 /bin/sh /etc/init.d/init.evmd run
root      3420     1  8 14:51 ?        00:00:00 /bin/sh /etc/init.d/init.cssd fatal
root      3421     1  5 14:51 ?        00:00:00 /bin/sh /etc/init.d/init.crsd run
root      3450  3419  4 14:51 ?        00:00:00 /bin/sh /etc/init.d/init.cssd startcheck
root      3451  3420  0 14:51 ?        00:00:00 /bin/sh /etc/init.d/init.cssd startcheck
root      3471  3451  0 14:51 ?        00:00:00 /bin/sh /etc/init.d/init.cssd runcheck
root      3473  3450  0 14:51 ?        00:00:00 /bin/sh /etc/init.d/init.cssd runcheck
root      3477  3473  0 14:51 ?        00:00:00 /bin/sh /etc/init.d/init.cssd runcheck
[root@rac1 ~]# ps -ef | grep init | grep -v grep
root         1     0  0 14:22 ?        00:00:01 init [5]
root      3419     1  0 14:51 ?        00:00:00 /bin/sh /etc/init.d/init.evmd run
root      3420     1  1 14:51 ?        00:00:00 /bin/sh /etc/init.d/init.cssd fatal
root      3421     1  0 14:51 ?        00:00:00 /bin/sh /etc/init.d/init.crsd run
root      3450  3419  0 14:51 ?        00:00:00 /bin/sh /etc/init.d/init.cssd startcheck
root      3451  3420  0 14:51 ?        00:00:00 /bin/sh /etc/init.d/init.cssd startcheck
root      3679  3421  0 14:51 ?        00:00:00 /bin/sh /etc/init.d/init.cssd startcheck

注意,这里有一个现象。即便这里不使用crsctl start crs命令手工去启动CRS,CRS同样会自动启动。

3)确认启动成功后的CRS状态
[root@rac1 ~]# crs_stat -t -v
Name           Type           R/RA   F/FT   Target    State     Host
----------------------------------------------------------------------
ora....B1.inst application    0/5    0/0    ONLINE    ONLINE    rac1
ora....B2.inst application    0/5    0/0    ONLINE    ONLINE    rac2
ora.RACDB.db   application    0/1    0/1    ONLINE    ONLINE    rac1
ora....DB1.srv application    0/1    0/0    ONLINE    ONLINE    rac1
ora....DB2.srv application    0/1    0/0    ONLINE    ONLINE    rac2
ora.....taf.cs application    0/1    0/1    ONLINE    ONLINE    rac1
ora....SM1.asm application    0/5    0/0    ONLINE    ONLINE    rac1
ora....C1.lsnr application    0/5    0/0    ONLINE    ONLINE    rac1
ora.rac1.gsd   application    0/5    0/0    ONLINE    ONLINE    rac1
ora.rac1.ons   application    0/3    0/0    ONLINE    ONLINE    rac1
ora.rac1.vip   application    0/0    0/0    ONLINE    ONLINE    rac1
ora....SM2.asm application    0/5    0/0    ONLINE    ONLINE    rac2
ora....C2.lsnr application    0/5    0/0    ONLINE    ONLINE    rac2
ora.rac2.gsd   application    0/5    0/0    ONLINE    ONLINE    rac2
ora.rac2.ons   application    0/3    0/0    ONLINE    ONLINE    rac2
ora.rac2.vip   application    0/0    0/0    ONLINE    ONLINE    rac2

4)确认成功启动后的与CRS相关的后台进程信息
[root@rac1 ~]# ps -ef | grep init | grep -v grep
root         1     0  0 14:22 ?        00:00:01 init [5]
root      3420     1  0 14:51 ?        00:00:01 /bin/sh /etc/init.d/init.cssd fatal
root      3810  3420  0 14:52 ?        00:00:00 /bin/sh /etc/init.d/init.cssd daemon
[root@rac1 ~]# ps -ef | grep d.bin | grep -v grep
root      3421     1  2 14:51 ?        00:00:08 /u01/crs1020/bin/crsd.bin reboot
oracle    3796  3419  1 14:52 ?        00:00:03 /u01/crs1020/bin/evmd.bin
oracle    3972  3924  0 14:52 ?        00:00:02 /u01/crs1020/bin/ocssd.bin

4.小结
这是一个人为误调整inittab文件导致的问题。从问题现象和处理过程中我们应该总结出:在任何实际调整之前,请充分评估和测试修改的影响范围。

Good luck.

secooler
11.01.05

-- The End --

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70034820/viewspace-2994430/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
OCM联盟( Oracle Certified Master Union)是由侯圣文(ACE总监)发起的一个公益组织,旨在为每一个OCM大师提供一个可以继续展示自己才华,技术和实力的平台。

注册时间:2007-05-27

  • 博文量
    799
  • 访问量
    8406996