重庆思庄Oracle、Redhat认证学习论坛

标题: RAC的一个节点启动报错ORA-01105,ORA-01606 [打印本页]

作者: 郑全    时间: 2016-7-11 08:56
标题: RAC的一个节点启动报错ORA-01105,ORA-01606
本帖最后由 郑全 于 2016-7-11 08:59 编辑

环境:RHEL5.6 + Oracle11.2.0.3双节点RAC
故障现象:节点1实例没有启动成功,节点2正常启动。
?1.故障现象
?2.解决过程
?3.总结
1.故障现象尝试启动RAC 节点1,遭遇ORA-01105,ORA-01606:
SQL> startup mount;
   ORACLE instance started.Total System Global Area 9.4869E+10 bytesFixed Size                  2264056 bytesVariable Size            5.0197E+10 bytesDatabase Buffers         4.4560E+10 bytesRedo Buffers              109174784 bytesORA-01105: mount is incompatible with mounts by other instancesORA-01606: parameter not identical to that of another mounted instance数据库节点1目前状态是NOMOUNT.
2.解决过程错误代码说明:
$ oerr ora 110501105, 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 160601606, 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 333col name for a35col description for a66col value for a30SELECT   i.ksppinm name,     i.ksppdesc description,     CV.ksppstvl VALUEFROM   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 mountedORACLE instance shut down.
SQL> startupORACLE instance started.Total System Global Area 9.4869E+10 bytesFixed Size                  2264056
bytesVariable Size            5.1271E+10 bytesDatabase Buffers         4.3487E+10 bytesRedo Buffers              
109174784 bytesDatabase mounted.Database opened.
至此RAC节点1启动成功。
3.总结我这里,其实就是修改了 gc_read_mostly_locking gc_policy_time 参数,关闭了 drm导致.






欢迎光临 重庆思庄Oracle、Redhat认证学习论坛 (http://bbs.cqsztech.com/) Powered by Discuz! X3.2