客户raid5发现有盘离线,并且其他盘有坏道,进行了多次换盘操作替换了大部分有坏道磁盘,但是部分文件访问依旧会报io错误

直接cp文件报
|--------------------------------------------------------------|
| cp``: error reading ``'datafile'``: Input``/output error |
数据库层面操作报
|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ORA-01115: IO error reading block from ``file %s (block ``# %s) ORA-27072: File I``/O error Linux-x86_64 Error: 5: Input``/output error Additional information: 4 Additional information: 21571487880 |
对于这样的情况,使用obet的forcecopy功能直接强制拷贝文件,可以最大限度求救数据obet forcecopy

把所有损坏文件拷贝出来之后传输到其他机器上,检查所有文件坏块情况

运气不错,整体坏块非常少,而且没有涉及数据库字典文件,然后尝试恢复

虽然recover database成功,但是不幸open 库报ORA-600 kcbzib_kcrsds_1错误
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| SQL> ``ALTER DATABASE OPEN ; ALTER DATABASE OPEN * ERROR ``at line 1: ORA-00603: ORACLE server session terminated ``by fatal error ORA-01092: ORACLE instance terminated. Disconnection forced ORA-00600: internal error code, arguments: [kcbzib_kcrsds_1], [], [], [], [] Process ID: 15786 Session ID: 3054 Serial number: 46983 |
通过obet的patch_scn功能进行修改scn

顺利打开数据库,并导出数据