描述:
DG修复后,只能打开到MOUNT状态,可以正常应用standby redo log,但是无法启动到read only状态,命令卡住,alert日志输出如下:
DG库检查控制文件中scn和文件头如下:
SQL> select to_char(checkpoint_change#) from v$database;
TO_CHAR(CHECKPOINT_CHANGE#)
----------------------------------------
72206402973
SQL> select file#,status,to_char(checkpoint_change#) from v$datafile;
FILE# STATUS TO_CHAR(CHECKPOINT_CHANGE#)
---------- ------- ----------------------------------------
1 SYSTEM 72364895289
2 ONLINE 72364895289
3 ONLINE 72364895289
4 ONLINE 72364895289
……省略
SQL> select file#,to_char(checkpoint_change#) from v$datafile_header;
FILE# TO_CHAR(CHECKPOINT_CHANGE#)
---------- ----------------------------------------
1 72364895289
2 72364895289
3 72364895289
4 72364895289
……省略 发现控制文件中记录的checkpoint_change#比数据文件头中的checkpoint_change#要小,这种情况是不能打开数据库的,但数据可以启动到mount状态。
控制文件是刚从生产standby出来的,理论上不应该,进一步检查生产的各scn号情况
SQL> select to_char(checkpoint_change#) from v$database;
TO_CHAR(CHECKPOINT_CHANGE#)
----------------------------------------
72365504792
SQL> select file#,name,status,to_char(checkpoint_change#) from v$datafile;
FILE# NAME STATUS TO_CHAR(CHECKPOINT_CHANGE#)
---------- ------------------------------ ------- ----------------------------------------
1 /oradata/EMR/system01.dbf SYSTEM 72208371152
2 /oradata/EMR/htcpp01.dbf ONLINE 72208371152
3 /oradata/EMR/sysaux01.dbf ONLINE 72208371152
4 /oradata/EMR/undotbs01.dbf ONLINE 72208371152
SQL> select file#,to_char(checkpoint_change#) from v$datafile_header;
FILE# TO_CHAR(CHECKPOINT_CHANGE#)
---------- ----------------------------------------
1 72208371152
2 72208371152
3 72208371152 生产端做了几个checkpoint后,控制文件的改变了,但是数据文件头中的还是没有变更,奇怪。
SQL> alter system checkpoint;生产数据文件头的scn看起来像是被锁住了
查看scn对应时间点
SQL> select to_char(scn_to_timestamp(72365504792), 'yyyy-mm-dd hh24:mi:ss') chr,timestamp_to_scn(scn_to_timestamp(72365504792)) dt from dual;
CHR DT
------------------- ----------
2022-10-08 14:46:35 7.2366E+10
SQL> select to_char(scn_to_timestamp(72208371152), 'yyyy-mm-dd hh24:mi:ss') chr,timestamp_to_scn(scn_to_timestamp(72208371152)) dt from dual;
CHR DT
------------------- ----------
2022-10-07 20:58:37 7.2208E+10
控制文件中的scn对应的是当前时间,数据文件头中对应的是前一天晚上的时间。
突然想到昨天这个时间点工程师在做dg恢复,使用了命令 SQL> alter database begin backup;
可能是忘记end backup了!!!
关闭数据库备份模式
SQL> alter database end backup
再次检查各scn,恢复正常。
进一步恢复DG。
注意:alter database begin backup只是锁住了数据文件头块的scn号,
但是数据还是会继续写入数据文件,当执行alter database end backup的时候,数据库就会用控制文件中最新的scn去更新每个数据文件头部块的scn。
切记:打开备份模式后,一定要记得关闭,不然数据库重启后将无法打开。
编辑推荐:
- 记一次DG修复后无法打开小乌龙03-03
- 收集表的统计信息时并发过高03-03
- 飞书二度出海“谋生”03-03
- 19C新特性研究实时统计03-03
- 记一次数据库迁移到rac11204数据库连接scan找不到主机03-03
- OGG-01705解决思路03-03
- Oracle 11gR2 RAC 单网卡转双网卡绑定配置03-03
- hanganalyze快速收集步骤03-03
下一篇:
相关推荐
-
雷神推出 MIX PRO II 迷你主机:基于 Ultra 200H,玻璃上盖 + ARGB 灯效
2 月 9 日消息,雷神 (THUNDEROBOT) 现已宣布推出基于英
-
制造商 Musnap 推出彩色墨水屏电纸书 Ocean C:支持手写笔、第三方安卓应用
2 月 10 日消息,制造商 Musnap 现已在海外推出一款 Oce
热文推荐
- 记一次DG修复后无法打开小乌龙
记一次DG修复后无法打开小乌龙
26-03-03 - 飞书二度出海“谋生”
飞书二度出海“谋生”
26-03-03 - 消毒柜行业的2023:变局、商机和反思
消毒柜行业的2023:变局、商机和反思
26-03-03 - database 空值问题
database 空值问题
26-03-03 - 19C PGA占用过载优化
19C PGA占用过载优化
26-03-03 - LINUX 环境 mysql to mysql OGG安装配置(一)
LINUX 环境 mysql to mysql OGG安装配置(一)
26-03-03 - LINUX 环境 mysql to oracle OGG安装配置
LINUX 环境 mysql to oracle OGG安装配置
26-03-03 - OGG11G升级至12C文档
OGG11G升级至12C文档
26-03-03 - cursor:pin S wait on X故障诊分析
cursor:pin S wait on X故障诊分析
26-03-03 - OGG12c卸载步骤说明
OGG12c卸载步骤说明
26-03-03
