联系:手机/微信(+86 17813235971) QQ(107644445)
作者:惜分飞©版权所有[未经本人同意,不得以任何形式转载,否则有进一步追究法律责任的权利.]
早上接手一个被人折腾了一个晚上的库,通过Oracle数据库异常恢复检查脚本(Oracle Database Recovery Check)收集信息发现有8个数据文件WRONG FILE TYPE
分析最初日志发现客户做了多次offline数据文件和resetlogs操作,运气不错resetlogs操作都没有成功,现场没有被进一步破坏
进一步检查发现客户有11月9日的备份以及全部的归档,直接执行
run{ set newname for datafile 31 to '+ARCH'; set newname for datafile 19 to '+ARCH'; set newname for datafile 20 to '+ARCH'; set newname for datafile 35 to '+ARCH'; set newname for datafile 52 to '+ARCH'; set newname for datafile 16 to '+ARCH'; set newname for datafile 30 to '+ARCH'; set newname for datafile 28 to '+ARCH'; restore datafile 31,19,20,35,52,16,30,28; switch datafile all; }
然后catalog注册日志,继续恢复,实现数据0丢失,数据库打开
庆幸夜间的所有误操作没有产生任何实质性破坏,不然就算有备份,后果也是比较麻烦的(客户的设备io特别慢,还原8个数据文件使用了近7个小时,全库还原只能呵呵……)