線上日誌檔案損壞恢復方法

weifenghq發表於2007-03-12
一次Oracle災難恢復經歷
本文將介紹一次8i下資料庫災難恢復的經歷,實是感悟太深.
1. 災難的發生:
資料庫伺服器正在執行時,資料伺服器主機突然藍色畫面,接著任由發貨員如何操作不能再發貨,只好關閉了伺服器,然後重新啟動 ,仍然不能發貨(發貨員員不懂資料庫,不知道資料庫因為故障不能啟動)。然後打電話給我們請求解決。
2. 瞭解資料庫狀況:
由於資料庫不是我建立的,我得先了解相關的情況:資料庫處於非歸檔模式,沒有歸檔日誌可以利用;一直執行良好,從沒有備份;資料庫每個日誌組僅一個重做日誌成員;資料庫發生災難後,其當前重做日誌組2發生硬碟介質錯誤。
3. 進行恢復
抱著一線希望,我希望歸檔日誌能夠切換或者刪除,所以分別進行了下列幾種方法的操作:
1) alter database drop logfile 'pathredo02.log' ;
2) alter database switch logfile ;
遺憾的是以上的命令執行後都返回錯誤,無法修改。因為資料是處於非歸檔模式,不能進行日誌切換操作,(除非資料庫能啟動,在啟動後可以?)。
沒有辦法,只好修改資料庫引數_allow_resetlogs_corruption為真:
_allow_resetlogs_corruption=true
於是,將上面一行加到初始化引數檔案中,進入svrmgrl控制檯,進行如下操作:
connect internal
startup mount
alter database clear logfile group 2 ;
recover database until cancel ;
alter database open resetlogs ;
alter database open ;
(以下操作中有幾步會返回錯誤,請不要理會提示的錯誤,繼續執行)。
OK! 資料庫成功啟動載入 。
4. 趕快將資料匯出或利用PB匯出,進行備份。
5. 重建資料庫,將上一步的資料匯入重建的資料庫。
這樣,資料成功恢復。
3ks
厲害 學習中
問一下 這樣恢復的話是不是丟失一些資料 該怎麼辦呢?
呵呵。。這本來就是因為沒有辦法的辦法呀
如果是非當前的redo是沒有關系的[@more@]

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

相關文章