【转自惜分飞】Oracle 12C的第一次异常恢复—文件头坏块
联系:手机(13429648788)QQ(107644445) 链接:http://www.xifenfei.com/5597.html 标题:Oracle 12C的第一次异常恢复—文件头坏块 作者:惜分飞 接到第一个使用Oracle 12C作为生产库的恢复救援.有两个业务数据文件报文件头损坏,其他数据文件全部是9月份的一
联系:手机(13429648788) QQ(107644445)
链接:http://www.xifenfei.com/5597.html
标题:Oracle 12C的第一次异常恢复—文件头坏块
作者:惜分飞
接到第一个使用Oracle 12C作为生产库的恢复救援.有两个业务数据文件报文件头损坏,其他数据文件全部是9月份的一次备份,在当前的条件下,希望我们能够帮他们恢复出来业务文件中的数据
数据库版本信息
|
数据库故障
具体脚本请参考:数据库恢复检查脚本(Oracle Database Recovery Check)
控制文件信息
控制文件中关于数据文件信息
数据文件头信息
alert日志报错
|
odu无法识别异常文件
|
dul无法识别异常文件
|
该异常文件使用dul/odu均无法正常识别.证明文件头确实已经损坏
dbv 检测
|
dbv检测结果无坏块,但是v$datafile_header和alert日志中报坏块,初步判断是由于该文件是bigfile,dbv未检测到文件头坏块,实际该该数据文件头损坏,其他block正常.所幸的是该库有9月份的rman备份(中间归档丢失),因此使用rman还原出来9月份的数据文件,然后使用dd拷贝两个 block(block 0和block 1)到异常文件.
|
尝试恢复数据库
|
使用bbed修改相关文件头,然后继续恢复
具体见:bbed解决ORA-01190类似方法处理
|
出现ORA-600[2662]错误,因为scn相差比较小,重启数据库机器,出现ORA-600[4194]错误
|
重建控制文件后继续恢复
|
设置undo_management=MANUAL然后继续恢复
|
这次的恢复也证明Oracle 12C确实有着越来越多的用户在使用.