某個控制檔案損壞的恢復案例

duduyey發表於2015-05-07
檢視控制檔案位置

SQL> select * from v$controlfile;

STATUS     NAME                                        IS_ BLOCK_SIZE FILE_SIZE_BLKS
------- ------------------------------------------------------------ --- ---------- --------------
     /data/oracle/oradata/jactest/control01.ctl               NO       16384            594
     /data/oracle/flash_recovery_area/jactest/control02.ctl          NO       16384            594

刪除其中一個控制檔案

[oracle@JacTest01 jactest]$ rm control02.ctl

資料庫日誌報出如下錯誤資訊:

Errors in file /data/oracle/diag/rdbms/jactest/jactest/trace/jactest_m000_15102.trc:
ORA-00210: cannot open the specified control file
ORA-00202: control file: '/data/oracle/flash_recovery_area/jactest/control02.ctl'
ORA-27041: unable to open file
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3

恢復方法(需要停機)

關閉資料庫

SQL> shutdown immediate
Database closed.
ORA-03113: end-of-file on communication channel
Process ID: 15514
Session ID: 13 Serial number: 9216


拷貝完整的控制檔案 替代損壞控制檔案

cp /data/oracle/oradata/jactest/control01.ctl /data/oracle/flash_recovery_area/jactest/control02.ctl

重新啟動資料庫

SQL> startup
ORACLE instance started.

Total System Global Area 1286066176 bytes
Fixed Size              2213016 bytes
Variable Size          1006635880 bytes
Database Buffers       268435456 bytes
Redo Buffers              8781824 bytes
Database mounted.
Database opened.












來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28719055/viewspace-1627304/,如需轉載,請註明出處,否則將追究法律責任。

相關文章