2006年08月21日
測試當發生不正常關機,並且當前的redo log file損壞的解決方法
測試環境
os:win2k
oracle:10.0.2
os:win2k
oracle:10.0.2
測試流程:
解決方法:
1、 create pfile=’d:/pfile’ from spfile;
2、修改pfile檔,裏面加入*._allow_resetlogs_corruption=TRUE
3、Startup nomount pfile=’d:/pfile’;
4、Alter database mount;
5、Recover database until cancel;
6、Alter database open resetlogs;
7、Select * from test1;
參考 link
| 1、db是在noarchive的模式 2、建立一個table,增加幾筆資料 3、使用alter system switch logfile 4、使用select * from v$log,查看現在的redo log是那個 5、使用shutdown abort,在windows中無法在open的情況下殺檔,所以只能這樣子了 6、刪除現在的redo log file 7、使用 startup 開起db 8、只能開到mount的狀態,我試著用 alter database clear unarchived logfile group 2; 結果是失敗的,無法開起db |
相關的log如下:
| SQL> alter database clear unarchived logfile
group 2; alter database clear unarchived logfile group 2 * ERROR 在行 1: ORA-01624: 日誌 2 是執行處理 binhu (系線 1) 損毀復原時需要的 ORA-00312: 線上日誌 2 系線 1: 'D:\ORACLE\PRODUCT\10.2.0\BINHU\REDO02.LOG' <-------------alter.log--------------------> Mon Aug 21 14:16:20 2006 Aborting crash recovery due to error 313 Mon Aug 21 14:16:20 2006 Errors in file d:\oracle\product\10.2.0\admin\binhu\udump\binhu_ora_3608.trc: ORA-00313: 開啟日誌群組 2 (屬於系線 1) 的成員失敗 ORA-00312: 線上日誌 2 系線 1: 'D:\ORACLE\PRODUCT\10.2.0\BINHU\REDO02.LOG' ORA-27041: 無法開啟檔案 OSD-04002: 無法開啟檔案 O/S-Error: (OS 2) 系統找不到指定的檔案。 ORA-313 signalled during: ALTER DATABASE OPEN... Mon Aug 21 14:16:45 2006 alter database clear unarchived logfile group 2 Mon Aug 21 14:16:45 2006 ORA-1624 signalled during: alter database clear unarchived logfile group 2... |
解決方法:
1、 create pfile=’d:/pfile’ from spfile;
2、修改pfile檔,裏面加入*._allow_resetlogs_corruption=TRUE
3、Startup nomount pfile=’d:/pfile’;
4、Alter database mount;
5、Recover database until cancel;
6、Alter database open resetlogs;
7、Select * from test1;
參考 link
引用URL
http://cgi.blog.roodo.com/trackback/2046677