聯機日誌檔案損壞問題
聯機日誌檔案分2種: 當前聯機日誌 和 非當前聯機日誌
非當前聯機日誌的丟失並不會產生太大的影響,但當前聯機日誌的丟失,非常有可能會造成資料的丟失。
以下操作均在歸檔模式下操作
在啟動資料庫時,發現只是啟動到mount狀態下,報ORA-00312或ORA-00313錯誤。
select * from v$log;
檢視丟失或損壞日誌是不是當前日誌。
如果丟失的是非當前聯機日誌,它的恢復是比較簡單的。
1.如果損壞的日誌檔案已經歸檔。
alter database clear logfile group n;
--用上述命令對這個日誌檔案進行重建
2.如果損壞的日誌檔案還沒有歸檔
alter database clear unarchived logfile group n;
-------------------------------------------------------------------------------------
最後就可以正常開啟資料庫了
alter database open;
由於是非當前日誌丟失,此恢復過程並不會造成資料丟失。
如果丟失的書當前聯機日誌,它非常有可能造成資料丟失
首先如果有資料庫全備份的話,使用rman先修復一下
restore database;
recover database until cancel;--能恢復到什麼程度就恢復到什麼程度
選擇auto進行恢復,出錯不管它
alter database open resetlogs;
以上做的一致性的不完全恢復,會跑日誌到現在可以用到的日誌,並回滾未提交的事務資料,丟失的是當前聯機重做日誌中的資料。
如果沒有備份的話,就只能進行不一致性恢復。
修改一致性校驗引數
alter system set "_allow_resetlogs_corruption" =true scope=spfile;
重新啟動資料庫到mount。
recover database until cancel;
alter database open resetlogs;
alter system set "_allow_resetlogs_corruption" =false scope=spfile;--將引數修改回來
利用現有資料,重新建庫
_allow_resetlogs_corruption引數設定為true時,只要資料庫啟動需要的各個物理檔案都在的話,就算資料檔案頭部和控制檔案中的那些scn值不相等,它也可以強行開啟資料庫。
這種方法是萬不得已才用的,這種做法會導致資料庫不一致,就是有可能出現已提交的資料沒被寫到資料檔案中,而未提及的事務的資料寫到了資料檔案中。
實驗1:
丟失當前聯機重做日誌檔案,用備份進行一致性的不完全恢復。
手動刪除當前日誌
強制重新啟動資料庫,出錯
用rman恢復資料檔案
開啟資料庫後,檢視資料是否還在,已經不存在
實驗2:
丟失當前日誌檔案,假設沒有備份,進行不一致性不完全恢復
刪除當前日誌檔案
開啟資料庫後,重置一致性引數
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29227735/viewspace-1066330/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Laravel 日誌檔案許可權問題Laravel
- 控制檔案損壞處理
- [問題]多個檔案寫入日誌報錯
- 解決Reiserfs檔案系統損壞的問題我們是認真的
- Oracle 控制檔案損壞解決方案Oracle
- RAC磁碟頭損壞問題處理
- system資料檔案頭損壞修復
- linux檔案系統損壞如何修復Linux
- 解決Adobe Acrobat開啟PDF檔案時已損壞無法修復的問題BAT
- 當前日誌損壞的案例(轉)
- 排查log4j不輸出日誌到檔案的問題
- [20221121]rman刪除歸檔日誌問題.txt
- 【MySQL日誌】MySQL日誌檔案初級管理MySql
- java專案日誌配置檔案Java
- InterBase資料庫檔案損壞的修復方法資料庫
- ORA-00279異常處理_offline資料檔案缺失日誌檔案問題一鍵修復
- 日誌檔案過大清理
- sybase iq日誌檔案管理
- MySQL InnoDB日誌檔案配置MySql
- git rebase重定基時衝突,檔案損壞出現HEAD標誌一鍵刪除Git
- u盤檔案損壞怎麼恢復資料 u盤恢復損壞資料的有效方法
- SpringBoot指定日誌檔案和日誌Profile功能Spring Boot
- Laravel 指定日誌檔案記錄任意日誌Laravel
- 探究MySQL中的日誌檔案MySql
- 日誌檔案使用小結(轉)
- mysql的日誌檔案詳解MySql
- lumen 日誌按天生成檔案
- tempdb日誌檔案暴增分析
- nginx日誌配置檔案說明Nginx
- linux 日誌log檔案 截斷Linux
- Acrobat Mac使用技巧:如何解決開啟PDF檔案時顯示已損壞無法修復的問題!BATMac
- 日誌損壞時,加入隱含引數開啟資料庫的總結資料庫
- 修復損壞的gzip壓縮檔案之原理篇
- Oracle 無備份情況下undo檔案損壞處理Oracle
- logminer異機挖掘歸檔日誌
- win10引導記錄損壞怎麼辦 win10引導二進位制檔案損壞Win10
- 操作日誌記錄(包括輸出至自定義日誌檔案)
- 在Linux中,有一堆日誌檔案,如何刪除7天前的日誌檔案?Linux
- SQL Anywhere db檔案損壞修復 DB檔案修復 DB資料庫修復SQL資料庫