zoukankan      html  css  js  c++  java
  • Oracle如何查询当前的crs/has自启动状态

    我们知道在某些停机测试场景,是需要人为禁用crs/has的自启动的,防止过程中主机反复重启对数据库集群造成影响。
    使用crsctl disable/enable crs命令可以禁用/启用crs的自启动,但没有命令去查看当前自启动状态,虽然命令可以反复执行,但看不到实际状态总归还是让人不放心。

    我在Linux测试环境下试了几个Oracle RAC版本:
    Oracle RAC 10.2.0.5
    Oracle RAC 11.2.0.4
    Oracle RAC 12.1.0.2

    发现对于Oracle RAC 10.2.0.5来说:
    使用root用户crsctl disable/enable crs时,改变的是这个文件的值:

    --10.2.0.5
    [root@rac1-server ~]# /s01/oracle/product/10.2.0/crs_1/bin/crsctl disable crs
    [root@rac1-server ~]# more /etc/oracle/scls_scr/rac1-server/root/crsstart 
    disable
    [root@rac1-server ~]# /s01/oracle/product/10.2.0/crs_1/bin/crsctl enable crs
    [root@rac1-server ~]# more /etc/oracle/scls_scr/rac1-server/root/crsstart 
    enable
    

    对于Oracle RAC 11.2.0.4和Oracle RAC 12.1.0.2来说:
    使用root用户crsctl disable/enable crs时,改变的是这个文件的值:

    --11.2.0.4
    [root@db01 ~]# /opt/app/11.2.0/grid/bin/crsctl disable crs
    CRS-4621: Oracle High Availability Services autostart is disabled.
    [root@db01 ~]# more /etc/oracle/scls_scr/db01/root/ohasdstr 
    disable
    [root@db01 ~]# /opt/app/11.2.0/grid/bin/crsctl enable crs
    CRS-4622: Oracle High Availability Services autostart is enabled.
    [root@db01 ~]# more /etc/oracle/scls_scr/db01/root/ohasdstr 
    enable
    
    --12.1.0.2
    [root@oemapp1 ~]# /app/12.1.0.2/grid/bin/crsctl disable crs
    CRS-4621: Oracle High Availability Services autostart is disabled.
    [root@oemapp1 ~]# more /etc/oracle/scls_scr/oemapp1/root/ohasdstr 
    disable
    [root@oemapp1 ~]# /app/12.1.0.2/grid/bin/crsctl enable crs
    CRS-4622: Oracle High Availability Services autostart is enabled.
    [root@oemapp1 ~]# more /etc/oracle/scls_scr/oemapp1/root/ohasdstr 
    enable
    

    基本上可以认定是10.2.0.5版本,都是去对应crsstart这个文件的值。11.2.0.4和12.1.0.2版本都是去对应ohasdstr这个文件值。

    对于主流的小机环境:
    对于AIX系统,跟Linux的配置文件路径没有区别;
    而对于SUN Solaris和HP-UX,需要注意配置文件的路径有所区别(/etc/oracle/.. -> /var/opt/oracle/..):

    --10.2.0.5
    /var/opt/oracle/scls_scr/$hostname/root/crsstart
    --11.2.0.4
    /var/opt/oracle/scls_scr/$hostname/root/ohasdstr
    

    相关案例:
    最近某客户AIX的一套10g RAC,现场运维DBA反映说是之前主机重启,crs不会自启动,每次都需要人工启动crs。但协助排查发现其配置文件crsstart的值已经是enable,且查到该配置文件的修改日期在7年前。说明配置是自启动的,而且7年没有人动过这个配置,比较诡异,最终是让其尝试disable再enable的方式,同时观察到配置文件的修改日期也会正常变,且在后续一次主机重启的维护中发现crs已经可以正常自启动。目前还无法解释为何之前无法自启动,先记录下这个现象。

  • 相关阅读:
    django框架——十二
    django框架——十一
    请简述一下你所了解的数据源控件有哪些
    在ASP.NET中,<%= %>和<%# %>有什么区别
    请解释ASP.NET中的web页面与其隐藏类之间的关系
    什么是viewstate,能否禁用?是否所用控件都可以禁用
    WEB控件及HTML服务端控件能否调用客户端方法?如果能,请解释如何调用
    静态类和静态方法的好处
    请写出在ASP.NET中常用的几种页面间传值的方法,并说出它们的特点。
    连接数据库主要有哪几个对象
  • 原文地址:https://www.cnblogs.com/jyzhao/p/10009473.html
Copyright © 2011-2022 走看看