我们知道在某些停机测试场景,是需要人为禁用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已经可以正常自启动。目前还无法解释为何之前无法自启动,先记录下这个现象。

Oracle如何查询当前的crs/has自启动状态的更多相关文章

  1. Oracle层次查询

    Oracle层次查询的语法如下: 下面根据两道“烧脑”的题具体来体现: 1. 根据时间先后顺序,十二星座的英文名称用逗号串起来为'Aries,Taurus,Gemini,Cancer,Leo,Virg ...

  2. 【SQL】Oracle分页查询的三种方法

    [SQL]Oracle分页查询的三种方法 采用伪列 rownum 查询前10条记录 ? 1 2 3 4 5 6 7 8 9 10 11 [sql] select * from t_user t whe ...

  3. 关于Oracle中查询的数字值的显示格式需要保留小数点后两位(或者三位,及其他位数)

    关于Oracle中查询的数字值的显示格式需要保留小数点后两位(或者三位,及其... 方法一:使用to_char的fm格式,即: to_char(round(data.amount,2),'FM9999 ...

  4. Oracle参数化查询

    Oracle参数化查询默认是根据顺序绑定的 select * from table where name=:p1 and (select id from table2 where name=:p1); ...

  5. Oracle优化查询技巧

    1. WHERE子句中的连接顺序:Oracle采用自下而上的顺序解析WHERE子句,根据这个原理,表之间的连接必须写在其他WHERE条件之前, 那些可以过滤掉最大数量记录的条件必须写在WHERE子句的 ...

  6. mysql和oracle 分页查询(转)

    最近简单的对oracle,mysql,sqlserver2005的数据分页查询作了研究,把各自的查询的语句贴出来供大家学习..... (一). mysql的分页查询 mysql的分页查询是最简单的,借 ...

  7. Linux Oracle服务启动&停止脚本与开机自启动

    在CentOS 6.3下安装完Oracle 10g R2,重开机之后,你会发现Oracle没有自行启动,这是正常的,因为在Linux下安装Oracle的确不会自行启动,必须要自行设定相关参数,首先先介 ...

  8. Oracle分页查询语句的写法(转)

    Oracle分页查询语句的写法(转)   分页查询是我们在使用数据库系统时经常要使用到的,下文对Oracle数据库系统中的分页查询语句作了详细的介绍,供您参考. Oracle分页查询语句使我们最常用的 ...

  9. Oracle生成查询包括对应于所有数据表记录语句中指定的字段名

    应用:已知的字段名,表中的所有数据的查询数据库中包含的所有数据表的字段名 操作方法:指定字段名,用户数据库表,它可以执行以下查询 --Oracle生成查询包括对应于所有数据表记录语句中指定的字段名 d ...

随机推荐

  1. linux下升级gcc版本(gcc-7)

    ubuntu16.04的自带gcc版本为gcc-5,因为安装pl-slam的需要升级到gcc-7,可以通过以下命令查看你的gcc版本 gcc --version 通过apt工具对gcc进行升级 sud ...

  2. c# 串口关闭死机

    用C#编写的wince串口通信程序基本大功告成了,与之前用API函数和线程来做串口通信不同,这次直接使用SerialPort控件来做,原本以为使用控件做会简单和方便许多,没成想,还遇到了很多麻烦. 通 ...

  3. XDOJ 1046 - 高精度模板综合测试 - [高精度模板]

    题目链接:http://acm.xidian.edu.cn/problem.php?id=1046 题目描述 请输出两个数的和,差,积,商,取余.注意不要有前导零. 输入 多组数据,每组数据是两个整数 ...

  4. Java进阶面试题大集合-offer不再是问题

    Java基础 1.List 和 Set 的区别 2.HashSet 是如何保证不重复的 3.HashMap 是线程安全的吗,为什么不是线程安全的(最好画图说明多线程环境下不安全)? 4.HashMap ...

  5. PPT文件分析摘记

    将.pptx文件后缀改成.rar,然后解压 ppt文件夹下面是资源 [Content_Types].xml  展示是布局和内容说明的入口xml(显示的页面.页面对应的布局.内容.样式文件的路径),里面 ...

  6. Exception 07 : org.hibernate.LazyInitializationException: could not initialize proxy - no Session

    异常名称: org.hibernate.LazyInitializationException: could not initialize proxy - no Session 异常截图: 异常详情: ...

  7. [development][C] 条件变量(condition variables)的应用场景是什么

    产生这个问题的起因是这样的: ‎[:] ‎<‎tong‎>‎ lilydjwg: 主线程要启动N个子线程, 一个局部变量作为把同样的参数传入每一个子线程. 子线程在开始的十行会处理完参数. ...

  8. 转:CSS设置HTML元素的高度与宽度的各种情况总结

    1.元素不设宽度第一种情况:元素为文档流中元素<!-- 父元素宽度为100px --><div style="width:100px;">     < ...

  9. shell脚本中sqlite3命令查询数据库失败返回空,并将错误信息打印到标准错误输出

    shell脚本中sqlite3命令查询数据库失败返回空,并将错误信息打印到标准错误输出 如: #/bin/sh local ret='sqlite3 test.db "select test ...

  10. .net core开发工具与SDK

    一.开发工具 开发工具使用Visual Studio 2017 下载官网:https://visualstudio.microsoft.com/zh-hans/vs/ 相关的安装已经有很多文章介绍过, ...