zoukankan      html  css  js  c++  java
  • RHEL 7 安装oracle rac 11.2.0.4执行root.sh报错ohasd failed to start

    报错信息:

    [root@rac1 ~]# /u01/app/oraInventory/orainstRoot.sh 
    Changing permissions of /u01/app/oraInventory.
    Adding read,write permissions for group.
    Removing read,write,execute permissions for world.


    Changing groupname of /u01/app/oraInventory to oinstall.
    The execution of the script is complete.
    [root@zjdb1 ~]# /u01/app/11.2.0/grid/root.sh 
    Performing root user operation for Oracle 11g 


    The following environment variables are set as:
        ORACLE_OWNER= grid
        ORACLE_HOME=  /u01/app/11.2.0/grid


    Enter the full pathname of the local bin directory: [/usr/local/bin]: 
       Copying dbhome to /usr/local/bin ...
       Copying oraenv to /usr/local/bin ...
       Copying coraenv to /usr/local/bin ...

    Creating /etc/oratab file...
    Entries will be added to the /etc/oratab file as needed by
    Database Configuration Assistant when a database is created
    Finished running generic part of root script.
    Now product-specific root actions will be performed.
    Using configuration parameter file: /u01/app/11.2.0/grid/crs/install/crsconfig_params
    Creating trace directory
    User ignored Prerequisites during installation
    Installing Trace File Analyzer
    OLR initialization - successful
      root wallet
      root wallet cert
      root cert export
      peer wallet
      profile reader wallet
      pa wallet
      peer wallet keys
      pa wallet keys
      peer cert request
      pa cert request
      peer cert
      pa cert
      peer root cert TP
      profile reader root cert TP
      pa root cert TP
      peer pa cert TP
      pa peer cert TP
      profile reader pa cert TP
      profile reader peer cert TP
      peer user cert
      pa user cert
    Adding Clusterware entries to inittab
    ohasd failed to start
    Failed to start the Clusterware. Last 20 lines of the alert log follow: 
    2015-05-23 23:37:45.460: 
    [client(13782)]CRS-2101:The OLR was formatted using version 3.


    报错原因:

    因为RHEL 7使用systemd而不是initd运行进程和重启进程,而root.sh通过传统的initd运行ohasd进程。

    解决方法:

    在RHEL 7中ohasd需要被设置为一个服务,在运行脚本root.sh之前。

    步骤如下:

    1. 以root用户创建服务文件

    #touch /usr/lib/systemd/system/ohas.service

    #chmod 777 /usr/lib/systemd/system/ohas.service

    2. 将以下内容添加到新创建的ohas.service文件中

    [root@rac1 init.d]# cat /usr/lib/systemd/system/ohas.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

    3. 以root用户运行下面的命令

    systemctl daemon-reload
    systemctl enable ohas.service
    systemctl start ohas.service
    4. 查看运行状态

    [root@rac1 init.d]# systemctl status ohas.service
    ohas.service - Oracle High Availability Services
       Loaded: loaded (/usr/lib/systemd/system/ohas.service; enabled)
       Active: failed (Result: start-limit) since Fri 2015-09-11 16:07:32 CST; 1s ago
      Process: 5734 ExecStart=/etc/init.d/init.ohasd run >/dev/null 2>&1 Type=simple (code=exited, status=203/EXEC)
     Main PID: 5734 (code=exited, status=203/EXEC)


    Sep 11 16:07:32 rac1 systemd[1]: Starting Oracle High Availability Services...
    Sep 11 16:07:32 rac1 systemd[1]: Started Oracle High Availability Services.
    Sep 11 16:07:32 rac1 systemd[1]: ohas.service: main process exited, code=exited, status=203/EXEC
    Sep 11 16:07:32 rac1 systemd[1]: Unit ohas.service entered failed state.
    Sep 11 16:07:32 rac1 systemd[1]: ohas.service holdoff time over, scheduling restart.
    Sep 11 16:07:32 rac1 systemd[1]: Stopping Oracle High Availability Services...
    Sep 11 16:07:32 rac1 systemd[1]: Starting Oracle High Availability Services...
    Sep 11 16:07:32 rac1 systemd[1]: ohas.service start request repeated too quickly, refusing to start.
    Sep 11 16:07:32 rac1 systemd[1]: Failed to start Oracle High Availability Services.
    Sep 11 16:07:32 rac1 systemd[1]: Unit ohas.service entered failed state.

    此时状态为失败,原因是现在还没有/etc/init.d/init.ohasd文件。

    下面可以运行脚本root.sh 不会再报ohasd failed to start错误了。

    如果还是报ohasd failed to start错误,可能是root.sh脚本创建了init.ohasd之后,ohas.service没有马上启动,解决方法参考以下:

    当运行root.sh时,一直刷新/etc/init.d ,直到出现 init.ohasd 文件,马上手动启动ohas.service服务 命令:systemctl start ohas.service 

    [root@rac1 init.d]# systemctl status ohas.service
    ohas.service - Oracle High Availability Services
       Loaded: loaded (/usr/lib/systemd/system/ohas.service; enabled)
       Active: active (running) since Fri 2015-09-11 16:09:05 CST; 3s ago
     Main PID: 6000 (init.ohasd)
       CGroup: /system.slice/ohas.service
               6000 /bin/sh /etc/init.d/init.ohasd run >/dev/null 2>&1 Type=simple
               6026 /bin/sleep 10


    Sep 11 16:09:05 rac1 systemd[1]: Starting Oracle High Availability Services...
    Sep 11 16:09:05 rac1 systemd[1]: Started Oracle High Availability Services.
    Sep 11 16:09:05 rac1 su[6020]: (to grid) root on none
    ————————————————
    版权声明:本文为CSDN博主「张玉龙」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/u010692693/article/details/48374557

  • 相关阅读:
    ros论坛
    python--dict和set类型--4
    python--条件判断和循环--3
    python--list和tuple类型--2
    Unicode与UTF-8互转(C语言实现)
    spring mvc 返回JSON数据
    值得学习的C语言开源项目和库
    mudos源码分析
    Freemarker使用总结
    Maven详解
  • 原文地址:https://www.cnblogs.com/bensonyang/p/12060395.html
Copyright © 2011-2022 走看看