起因:公司oracle莫名宕机重启报错文件介质需要恢复并给了文件的id号和文件所在位置
记得昨天有在数据库打开的情况下移动数据库文件。我可以确认文件没有被损坏,只不过oracle调用出了问题
思路:文件介质恢复我在之前的逻辑备份中遇到过是如下操作恢复的
1、shutdown immediate; 关闭数据库
2、startup; 打开数据库
3、alter database datafile 9(我的id是9记得换成报错的id)offline drop; 设置数据文件脱机状态并删除
4、将备份文件放置原位置下并执行 recvoer datafile 9;恢复数据文件9
5、显示完成介质恢复就解决了 执行database datafile 9 online; 并alter database open; 解决。
尝试:因为确定我的文件没有损坏,我就把原数据文件移动走了并依次执行了 1~3步骤。然后将原数据文件拷贝回来执行4、5也成功了。说明文件并没有损坏。
为避免下次遇到再做无用尝试特此记录。