环境:RHEL6.5 + Oracle11.2.0.4 双节点RAC

故障现象:节点1实例没有启动成功,节点2正常启动。

1.故障现象

尝试启动RAC 节点1,遭遇ORA-01105,ORA-01606:
```
SQL> startup mount;
ORACLE instance started.

Total System Global Area 9.4869E+10 bytes

Fixed Size 2264056 bytes

Variable Size 5.0197E+10 bytes

Database Buffers 4.4560E+10 bytes

Redo Buffers 109174784 bytes

ORA-01105: mount is incompatible with mounts by other instances

ORA-01606: parameter not identical to that of another mounted instance

数据库节点1目前状态是NOMOUNT.

<h1 id="1">2.解决过程</h1>
**错误代码说明:**

$ oerr ora 1105

01105, 00000, "mount is incompatible with mounts by other instances"

// *Cause: An attempt to mount the database discovered that another instance

// mounted a database by the same name, but the mount is not

// compatible. Additional errors are reported explaining why.

// *Action: See accompanying errors.

$ oerr ora 1606

01606, 00000, "parameter not identical to that of another mounted instance"

// *Cause: A parameter was different on two instances.

// *Action: Modify the initialization parameter and restart.

查询gc_隐含参数

    set linesize 333
col name for a35
col description for a66
col value for a30
SELECT i.ksppinm name,
i.ksppdesc description,
CV.ksppstvl VALUE
FROM sys.x$ksppi i, sys.x$ksppcv CV
WHERE i.inst_id = USERENV ('Instance')
AND CV.inst_id = USERENV ('Instance')
AND i.indx = CV.indx
AND i.ksppinm LIKE '/_gc%' ESCAPE '/'
ORDER BY REPLACE (i.ksppinm, '_', ''); 查询结果如下(部分相同值的参数已省略):

--节点1:

_gc_policy_time how often to make object policy decisions in minutes 0

_gc_read_mostly_flush_check if TRUE, optimize flushes for read mostly objects FALSE

_gc_read_mostly_locking if TRUE, enable read-mostly locking FALSE

--节点2:

_gc_policy_time how often to make object policy decisions in minutes 10

_gc_read_mostly_flush_check if TRUE, optimize flushes for read mostly objects FALSE

_gc_read_mostly_locking if TRUE, enable read-mostly locking TRUE

发现问题,_gc_policy_time隐藏参数,_gc_read_mostly_locking隐藏参数,2个节点值不一致。
解决方法:根据现在正常运行的节点2的值,重新设置这两个值:

alter system set "_gc_read_mostly_locking"=true scope=spfile sid='';

alter system set "_gc_policy_time"=10 scope=spfile sid='
';

--正常关闭节点1:

shutdown immediate;

--正常启动节点1:

startup

实际执行过程如下:

SQL> alter system set "_gc_read_mostly_locking"=true scope=spfile sid='*';

System altered.

SQL> alter system set "_gc_policy_time"=10 scope=spfile sid='*';

System altered.

SQL> shutdown immediate;

ORA-01507: database not mounted

ORACLE instance shut down.

SQL> startup

ORACLE instance started.

Total System Global Area 9.4869E+10 bytes

Fixed Size 2264056 bytes

Variable Size 5.1271E+10 bytes

Database Buffers 4.3487E+10 bytes

Redo Buffers 109174784 bytes

Database mounted.

Database opened.

至此RAC节点1启动成功。

<h1 id="3">3.总结</h1>
猜测故障原因应该是之前有人修改数据库隐含参数,误操作只修改了一个实例导致。
当我们操作RAC环境时,一定要注意`sid='*'`这一点。

RAC某节点启动遭遇ORA-01105,ORA-01606的更多相关文章

  1. ORACLE RAC 下非缺省端口监听配置(listener.ora tnsnames.ora)

    不论是单实例还是RAC,对于非缺省端口下(1521)的监听器,pmon进程不会将service/instance注册到监听器,即不会实现动态注册.与单实例相同,RAC非缺省端口的监听器也是通过设置参数 ...

  2. Oracle启动中,spfile.ora、init<SID>.ora、spfile<SID>.ora 这三个文件正确的先后顺序是什么?

    Oracle启动中,spfile.ora.init<SID>.ora.spfile<SID>.ora 这三个文件正确的先后顺序是什么? 解答:启动数据库,使用startup命令 ...

  3. Oracle Rac crs无法启动

    OS:ORACLE LINUX 5.7 DB:11.2.0.3 RAC:YES 故障:1.两节点RAC,节点分别为linuxdb1.linuxdb2,其中节点linuxdb2服务器出现故障,无法启动2 ...

  4. RAC 数据库的启动与关闭

    RAC数据库与单实例的差异主要表现在多个实例通过集群件来统一管理共享的资源.因此原有的单实例的管理方式,如数据库.监听器等的关闭启动等可以使用原有的方式进行,也可以通过集群管理工具,命令行来集中管理, ...

  5. 实验:Oracle单节点RAC添加节点

    环境:RHEL 6.5 + Oracle 11.2.0.4 单节点RAC 需求:单节点RAC添加新节点 1.添加节点前的准备工作 2.正式添加节点 3.其他配置工作 1.添加节点前的准备工作 参考Or ...

  6. RAC+单节点搭建DG

    primary RAC to single standby 参考文献:RAC+单实例DATAGUARD 配置   http://blog.csdn.net/miyatang/article/detai ...

  7. bay——RAC 关闭和启动顺序,状态查看.txt

    oracle 11g rac 关闭和启动顺序,状态查看https://www.cnblogs.com/hellojesson/p/4501112.html----------------------- ...

  8. RAC 某节点不可用时,对应VIP是否可用

    实验环境:RHEL 6.5 + GI 11.2.0.4 + Oracle 11.2.0.4 验证:RAC 某节点不可用时,其对应VIP是否可用?是否可用于连接数据库? [grid@jyrac2 ~]$ ...

  9. 同事搭一个测试RAC说节点2发现idle了,报ORA-00304

    [oracle@testrac2 11204]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Production on Wed Jan 16 1 ...

随机推荐

  1. 关于learntorank http://qiita.com/rockhopper/items/bb3d46f01df5f6499123

    一.数据转换 如何对于训练数据做pairwise的transform,比如你原始数据是要么点击要么不点击,如何对这些样本数据做pairwise的transform? 下面的方法主要是做组合的方法,就是 ...

  2. php 中的 基本区别点

    this.self.parent https://my.oschina.net/jackguo/blog/189020

  3. android——自定义listView

    都知道微信主机面 有个界面会一行一一行的聊天记录,那个效果就可以用listview来实现(当然这只是其中的一种) listView是一种比较常见的组件它用来展示列的view,它是根据数据的长度来显示数 ...

  4. 线上应用bug跟踪查找-友盟统计

    线上的应用只要用心点点都能发现些bug,连微信,QQ也不列外.但是bug中最严重的算是闪退了,这导致了用户直接不能使用我们的app. 我们公司是特别注重用户反馈和体验的,我们会定期打电话咨询用户的使用 ...

  5. UI控件(UIPickerView)

    @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; _item1 = [[NSArray alloc]i ...

  6. 探索c#之跳跃表(SkipList)

    阅读目录: 基本介绍 算法思想 演化步骤 实现细节 总结 基本介绍 SkipList是William Pugh在1990年提出的,它是一种可替代平衡树的数据结构. SkipList在实现上相对比较简单 ...

  7. C++的性能C#的产能?! - .Net Native 系列向导

    之前一文<c++的性能, c#的产能?!鱼和熊掌可以兼得,.NET NATIVE初窥> 获得很多朋友支持和鼓励,也更让我坚定做这项技术的推广者,希望能让更多的朋友了解这项技术,于是先从官方 ...

  8. 使用GDB调试Go语言

    用Go语言已经有一段时间了,总结一下如何用GDB来调试它! ps:网上有很多文章都有描述,但是都不是很全面,这里将那些方法汇总一下 GDB简介  GDB是GNU开源组织发布的⼀一个强⼤大的UNIX下的 ...

  9. Step by step 如何创建一个新森林

    原创地址:http://www.cnblogs.com/jfzhu/p/4006118.html 转载请注明出处 创建一个新森林就是在一台计算机上安装AD DS,并将这台计算机提升为域控制器. 演示环 ...

  10. TODO:Golang Linux进程退出说明

    TODO:Golang Linux进程退出说明 Golang使用os.Exit(code)进程退出导致当前程序退出并返回给定的状态代码.传统上,code代码为零表示成功退出,非零错误退出. sysca ...