Welcome 微信登录

首页 / 数据库 / MySQL / Oracle 11.2.0.1 ADG环境MRP进程遭遇ORA-600异常终止

环境:Linux + Oracle 11.2.0.1 ADG
现象:发现备库没有应用日志1. 数据库查询备库目前状态
发现备库目前没有应用日志,apply lag已经显示备库有3天21小时多没有应用日志。SQL> set linesize 1200SQL> SELECT OPEN_MODE, DATABASE_ROLE, SWITCHOVER_STATUS, FORCE_LOGGING, DATAGUARD_BROKER, GUARD_STATUS FROM V$DATABASE; OPEN_MODEDATABASE_ROLESWITCHOVER_STATUSFOR DATAGUAR GUARD_S-------------------- ---------------- -------------------- --- -------- -------READ ONLYPHYSICAL STANDBY NOT ALLOWEDYES DISABLED NONESQL> select * from v$dataguard_stats;NAME VALUEUNIT TIME_COMPUTEDDATUM_TIME-------------------------------- ---------------------------------------------------------------- ------------------------------ ------------------------------ ------------------------------transport lag+00 00:00:00 day(2) to second(0) interval 01/17/2017 16:07:1201/17/2017 16:07:12apply lag+03 21:34:49 day(2) to second(0) interval 01/17/2017 16:07:1201/17/2017 16:07:12apply finish time+00 03:10:34.000 day(2) to second(3) interval 01/17/2017 16:07:12estimated startup time 15 second 01/17/2017 16:07:122. 查询alert告警日志
从alert告警日志中定位到ADG出现问题的时刻,有600报错信息,进而导致MRP进程终止,详细日志如下:Fri Jan 13 18:32:25 2017Errors in file /home/oracle/opt/oracle/diag/rdbms/orcl/orcl/trace/orcl_pr03_22555.trc(incident=67480):ORA-00600: internal error code, arguments: [kcbr_apply_change_11], [], [], [], [], [], [], [], [], [], [], []Incident details in: /home/oracle/opt/oracle/diag/rdbms/orcl/orcl/incident/incdir_67480/orcl_pr03_22555_i67480.trcSlave exiting with ORA-600 exceptionErrors in file /home/oracle/opt/oracle/diag/rdbms/orcl/orcl/trace/orcl_pr03_22555.trc:ORA-00600: internal error code, arguments: [kcbr_apply_change_11], [], [], [], [], [], [], [], [], [], [], []Fri Jan 13 18:32:26 2017Errors in file /home/oracle/opt/oracle/diag/rdbms/orcl/orcl/trace/orcl_mrp0_22547.trc(incident=67448):ORA-00600: internal error code, arguments: [kcbr_apply_change_11], [], [], [], [], [], [], [], [], [], [], []Incident details in: /home/oracle/opt/oracle/diag/rdbms/orcl/orcl/incident/incdir_67448/orcl_mrp0_22547_i67448.trcFri Jan 13 18:32:26 2017Trace dumping is performing id=[cdmp_20170113183226]Recovery Slave PR03 previously exited with exception 600Fri Jan 13 18:32:27 2017MRP0: Background Media Recovery terminated with error 448Errors in file /home/oracle/opt/oracle/diag/rdbms/orcl/orcl/trace/orcl_pr00_22549.trc:ORA-00448: normal completion of background processManaged Standby Recovery not using Real Time ApplyRecovery interrupted!Fri Jan 13 18:32:27 2017Sweep [inc][67480]: completedSweep [inc][67480]: completedRecovered data files to a consistent state at change 2010287982Errors in file /home/oracle/opt/oracle/diag/rdbms/orcl/orcl/trace/orcl_pr00_22549.trc:ORA-00448: normal completion of background processErrors in file /home/oracle/opt/oracle/diag/rdbms/orcl/orcl/trace/orcl_mrp0_22547.trc:ORA-00600: internal error code, arguments: [kcbr_apply_change_11], [], [], [], [], [], [], [], [], [], [], []MRP0: Background Media Recovery process shutdown (orcl)Sweep [inc][67448]: completedSweep [inc2][67480]: completedSweep [inc2][67448]: completedTrace dumping is performing id=[cdmp_20170113183227]Fri Jan 13 18:33:04 2017Using STANDBY_ARCHIVE_DEST parameter default value as USE_DB_RECOVERY_FILE_DEST3. 尝试手工启动备库MRP恢复进程
发现手工启动备库MRP恢复进程,告警日志中依然会报出相同ORA-600 [kcbr_apply_change_11]错误。4. 尝试mount状态启动MRP恢复进程
发现在mount状态下,可以正常启动MRP恢复进程,等恢复完成后,重新开启ADG实时应用,一切正常。shutdown immediatestartup mountalter database recover managed standby database disconnect from session;此时等待恢复完成...alter database recover managed standby database cancel;alter database open;alter database recover managed standby database using current logfile disconnect from session;查询备库状态确认一切正常:SQL> SELECT OPEN_MODE, DATABASE_ROLE, SWITCHOVER_STATUS, FORCE_LOGGING, DATAGUARD_BROKER, GUARD_STATUS FROM V$DATABASE; OPEN_MODEDATABASE_ROLESWITCHOVER_STATUSFOR DATAGUAR GUARD_S-------------------- ---------------- -------------------- --- -------- -------READ ONLY WITH APPLY PHYSICAL STANDBY NOT ALLOWEDYES DISABLED NONESQL> select * from v$dataguard_stats;NAME VALUEUNIT TIME_COMPUTEDDATUM_TIME-------------------------------- ---------------------------------------------------------------- ------------------------------ ------------------------------ ------------------------------transport lag+00 00:00:00 day(2) to second(0) interval 01/17/2017 17:42:2601/17/2017 17:42:26apply lag+00 00:00:00 day(2) to second(0) interval 01/17/2017 17:42:2601/17/2017 17:42:26apply finish time+00 00:00:00.000 day(2) to second(3) interval 01/17/2017 17:42:26estimated startup time 18 second 01/17/2017 17:42:265. 查询MOS,定位根本原因
查询MOS发现该现象与bug 10419984 相匹配
Bug 10419984 : ACTIVE DATA GUARD STANDBY GIVES ORA-600 [KCBR_APPLY_CHANGE_11]
建议应用该补丁防止该问题再次被触发。更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12本文永久更新链接地址