900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > oracle 00314 【案例】Oracle报错ORA-00314 数据库异常关机导致redo SCN不一致无法启动...

oracle 00314 【案例】Oracle报错ORA-00314 数据库异常关机导致redo SCN不一致无法启动...

时间:2023-07-22 10:49:50

相关推荐

oracle 00314 【案例】Oracle报错ORA-00314 数据库异常关机导致redo SCN不一致无法启动...

天萃荷净

运维DBA反映Oracle数据库服务器蓝屏,在修复后启动数据库时报错ORA-00314,分析原因为redo SCN不一致导致

运行在win平台上的oracle 10G数据库,因为主机蓝屏,使用pe拷贝出来相关数据库文件,redo文件,控制文件,在恢复数据库过中遇到ORA-00314错误,而无法继续下去

1.Oracle恢复报错

SQL> recover database

ORA-00283: 恢复会话因错误而取消

ORA-00314: 日志 3 (用于线程 1) 要求的序号 1366 与 1363 不匹配

ORA-00312: 联机日志 3 线程 1:'DC:\ORADATA\INTERLIB\REDO03.LOG'

00314, 00000, "log %s of thread %s, expected sequence# %s doesn't match %s"

// *Cause: The online log is corrupted or is an old version.

// *Action: Find and install correct version of log or reset logs.

这里提示可以大概看出来,数据库进行恢复的时候,需要sequence 为1366的日志,但是与现在的1363不匹配。通过上面的解释我们很可能知道是redo文件异常或者弄错了redo文件

分析Oracle Database Recovery Check结果

控制文件scn相关信息,从这里可以看到数据库的控制文件scn为47714860,checkpoint scn为47711411

控制文件中关于数据库文件是scn为47711411,而且stop_scn为null

数据文件头scn是47711411,而且fuzzy为yes

redo的相关信息,这里我们可以看出当前redo的sequence为1366,first_scn为47711411,redo的写入顺序是redo01->redo02->redo03->redo01

通过这里整体分析,我们可以知道,数据库为非正常关闭,恢复应该从redo03(sequence 1366)开始进行恢复,但是为什么出现ORA-00314呢?通过dump redo header继续分析

2.dump redo header 分析

这个里面我们可以看到redo01的sequence 为16进制554等于10进制的1364,scn的范围为:0x000002d6e4ab-0x000002d7455b

这个里面我们可以看到redo02的sequence 为16进制555等于10进制的1365,scn的范围为:0x000002d7455b-0x000002d804b3

这个属于异常redo,注意第一个seq: 0×00000556等于十进制的1366(也就是表示该redo的sequence为1366),”Seq# 0000001363,SCN 0x000002d5e1c6-0x000002d6e4ab”表示在redo的文件头有部分信息记录的为sequence为1633,另外这里表示该文件最大scn为0x000002d6e4ab,和redo01的最小scn(0x000002d6e4ab-0x000002d7455b)/redo01的”Prev scn: 0×0000.02d5e1c6″与现在看到的redo03中的最小scn匹配.

通过这里可以明白,在主机蓝屏的时候由于某种异常,导致redo03中的部分信息修改为了sequence为1366,但是部分信息依然保留它上次的sequence为1363的信息,导致数据库在重新恢复的时候无法正常成功.

3.Oracle报错处理方法

该故障是由于current redo异常导致,根据经验,一般使用隐含参数屏蔽前滚,然后强制拉库,绝大部分情况能够拉库成功,如果人品不好可能需要使用其他隐含参数甚至bbed等方式处理

--------------------------------------ORACLE-DBA----------------------------------------

最权威、专业的Oracle案例资源汇总之【案例】Oracle报错ORA-00314 数据库异常关机导致redo SCN不一致无法启动

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。