暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

DG redo异常处理

IT那活儿 2023-09-08
147

点击上方“IT那活儿”公众号,关注后了解更多内容,不管IT什么活儿,干就完了!!!




问题概述



1.1 背景说明以及日志记录

1)故障描述
XX公司网络接入平台DataGuard数据库备库出现异常,无法同步主库数据。造成数据不一致情况。尝试启动恢复管理模式时,备库自动关闭mpr进程,查询日志发现是由于数据文件5中的对象号152455存在异常导致恢复管理模式中断。
2)原因
当前在线日志损坏,导致undo回滚段出现问题,系统表空间在重启实例后要进行实例恢复,当前在线日志损坏,系统表空间无法进行recover,因而出现了恢复管理模式一场。
3)日志记录
Archived Log entry 4555 added for thread 1 sequence 30712 ID 0xbc42811a dest 2:
Tue Jan 13 11:49:28 2019
Media Recovery Log D:\ARCHIVELOG\ARC0000030712_0786978076.0001
Media Recovery Waiting for thread 1 sequence 30713 (in transit)
Tue Jan 13 13:19:19 2019
RFS[3]: Selected log 4 for thread 1 sequence 30714 dbid -1136533990 branch 786978076
Tue Jan 13 13:19:19 2019
Archived Log entry 4556 added for thread 1 sequence 30713 ID 0xbc42811a dest 2:
Tue Jan 13 13:19:23 2019
Media Recovery Log D:\ARCHIVELOG\ARC0000030713_0786978076.0001
Tue Jan 13 13:19:25 2019
Errors in file D:\ORACLE\diag\rdbms\tywljrpt\tywljrpt\trace\tywljrpt_pr1b_4624.trc (incident=156665):
ORA-00600: 内部错误代码, 参数: [6122], [0], [1], [0], [], [], [], [], [], [], [], []
Incident details in: D:\ORACLE\diag\rdbms\tywljrpt\tywljrpt\incident\incdir_156665\tywljrpt_pr1b_4624_i156665.trc
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Tue Jan 13 13:19:27 2019
Dumping diagnostic data in directory=[cdmp_20190113131927], requested by (instance=1, osid=4624 (PR1B)), summary=[incident=156665].
Slave exiting with ORA-10562 exception
Errors in file D:\ORACLE\diag\rdbms\tywljrpt\tywljrpt\trace\tywljrpt_pr1b_4624.trc:
ORA-10562: Error occurred while applying redo to data block (file# 5, block# 317001)
ORA-10564: tablespace AMDATA
ORA-01110: 数据文件 5: 'D:\ORACLE\ORADATA\TYWLJRPT\AMDATA.DBF'
ORA-10561: block type 'TRANSACTION MANAGED INDEX BLOCK', data object# 152455
ORA-00600: 内部错误代码, 参数: [6122], [0], [1], [0], [], [], [], [], [], [], [], []
Tue Jan 13 13:19:28 2019
Recovery Slave PR1B previously exited with exception 10562
Tue Jan 13 13:19:28 2019
Sweep [inc][156665]: completed
Sweep [inc2][156665]: completed
Tue Jan 13 13:19:39 2019
Errors with log D:\ARCHIVELOG\ARC0000030713_0786978076.0001
MRP0: Background Media Recovery terminated with error 448
Errors in file D:\ORACLE\diag\rdbms\tywljrpt\tywljrpt\trace\tywljrpt_pr00_4596.trc:
ORA-00448: 后台进程正常结束
Recovery interrupted!

1.2 系统信息

                                          操作系统信息
Server name
WIN-XXX(主机)/WIN-XXX(备机)
Server IP
x.x.x.5(主库)/x.x.x.6(备库)
Server domain

Server OS
Windows
OS Release
Windows server 2008 R2 service pack 1
32/64 bit OS
64
Oracle version
11.2.0.1.0 - 64bit Production


1.3 风险和注意事项

本次修复可在线操作,不影响业务。




修复操作



2.1 确认当前备库scn

SQL> select current_scn from v$database;

CURRENT_SCN
-----------
269796198

2.2 确认主库是否添加过数据文件

SQL> select FILE#,name from v$datafile where CREATION_CHANGE#> =269796198;
未选定行

2.3 主库做基于scn的增量备份,创建standby controlfile

run
{
backup as compressed backupset incremental from SCN 269796198 database format 'F:\for_standby\rmanback_incr_%d_%I_%s_%p_%T.bkp'
include current controlfile for standby tag 'for_standby';
}

2.4 传输增量备份,standby控制文件到备库

2.5 备库恢复步骤

startup mount force
//加载控制文件
catalog start with 'F:\for_standby\';
//注册新的备份集
recover database noredo;
//恢复数据
alter database open;
//启动数据库加载数据文件
alter database recover managed standby database disconnect from session;
//启动恢复管理模式

通过以上步骤操作,最后成功恢复数据库业务。

END


本文作者:事业二部(上海新炬中北团队)

本文来源:“IT那活儿”公众号

文章转载自IT那活儿,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论