• CRS无法随操作系统自动启动


    1、环境说明

    一套RedHat7.5上安装的11.2.0.4 RAC,进行正常的系统维护,重启主机后发现GI集群一直无法启动。

     

    2、问题分析

    (1)、查看GI集群的OHASD进程的日志,发现操作系统重启后没有任何的日志输出。

    (2)、查看OHASD进程,发现只有init.ohasd run进程,而ohasd.bin reboot进程没有起来。

    [root@snyxdb1 system]# ps -ef |grep ohasd

    root 3075 1 0 Apr23 ? 00:00:00 /bin/sh /etc/init.d/init.ohasd run >/dev/null 2>&1 Type=simple

    root 133358 111218 0 16:47 pts/1 00:00:00 grep --color=auto ohasd

    [root@snyxdb1 system]#

    (3)、查看CRS是否配置为enable。

    [root@snyxdb1 system]# crsctl config crs

    CRS-4622: Oracle High Availability Services autostart is enabled.

    [root@snyxdb1 system]#

     

    [root@snyxdb1 root]# more ohasdstr

    enable

    [root@snyxdb1 root]# more crsstart

    enable

    [root@snyxdb1 root]# more ohasdrun

    restart

    [root@snyxdb1 root]#

    (4)、查看/etc/systemd/system目录下是否存在ohasd.service服务,发现已经存在ohasd.service服务,内容如下所示。

    [Unit]

    Description=Oracle High Availability Services

    After=syslog.target

     

    [Service]

    ExecStart=/etc/init.d/init.ohasd run >/dev/null 2>&1 Type=simple

    Restart=always

     

    [Install]

    WantedBy=multi-user.target

    (5)、问题似乎无解了,我们知道在Linux 7环境中安装11.2.0.4 RAC时,存在一个著名的问题,需要在运行root.sh之前安装一个patch(18370031),否则root.sh脚本会失败。询问当初安装该RAC集群的同事,得知该环境中没有安装patch(18370031),而只是执行了一个workaround(在/etc/systemd/system目录下创建ohasd.service服务),该workaround可以解决root.sh脚本执行失败的问题。

    (6)、至此,我非常怀疑是该workaround仍然存在某些缺陷,最终,在MOS库中搜索到解决方案,该workaround的确存在缺陷,它可以解决root.sh脚本执行失败的问题,但在有些情况下,有可能存在CRS无法随操作系统自动启动,ohasd.bin reboot进程无法启动的问题。

    (7)、最终的解决办法是在/etc/systemd/system目录下另外创建一个名为autohas.service服务,内容如下所示:

    [Unit]

    Description=Auto Oracle High Availability Services

    After=syslog.target

     

    [Service]

    ExecStart=/etc/init.d/ohasd start >/dev/null 2>&1

    Type=forking

     

    [Install]

    WantedBy=multi-user.target

     

    [root@snyxdb1 system]# systemctl daemon-reload

    [root@snyxdb1 system]# systemctl enable autohas.service

    Created symlink from /etc/systemd/system/multi-user.target.wants/autohas.service to /etc/systemd/system/autohas.service.

    [root@snyxdb1 system]# systemctl start autohas.service

    [root@snyxdb1 system]#

     

    3、建议

    在Linux 7环境中安装11.2.0.4 RAC时,建议还是安装patch(18370031)的方式来处理root.sh脚本执行失败的问题,而不要使用workaround。

     

  • 相关阅读:
    Prime Time使用
    cache与MMU与总线仲裁
    IUS tcl cmd
    CPU cache
    generated clock
    PL301 matrix内部模块
    014-数据结构-树形结构-基数树、Patricia树、默克尔树、梅克尔帕特里夏树( Merkle Patricia Tree, MPT)
    001-软件架构概览、maven补充【分包工程、合并包、web容器插件】、git补充
    013-数据结构-树形结构-决策树
    012-数据结构-树形结构-哈希树[hashtree]、字典树[trietree]、后缀树
  • 原文地址:https://www.cnblogs.com/missyou-shiyh/p/10798275.html
Copyright © 2020-2023  润新知