事務日志備份失敗錯誤:Backup detected log corruption in database


【1】錯誤信息

Backup detected log corruption in database FakeDBName. Context is FirstSector. LogFile: 2 ‘F:\SQLLOGS\XYZ\FakeDBName_Log.ldf’ 
VLF SeqNo: x502e VLFBase: x2ce40000 LogBlockOffset: x2d0a9000 SectorStatus: 2 LogBlock.StartLsn.SeqNo: x4ee3 LogBlock.StartLsn.Blk: x1348 Size: x200 PrevSize: x400 2009-03-06 10:00:02.61 Backup Error: 3041, Severity: 16, State: 1. 2009-03-06 10:00:02.61 Backup BACKUP failed to complete the command BACKUP LOG FakeDBName Check the backup application log for detailed messages. 2009-03-06 10:00:03.61 Backup Error: 3041, Severity: 16, State: 1.

【2】原因分析

1. 日志備份時,需要備份自上一次日志備份以來的整個日志鏈。日志鏈中的任何log corruption都會報錯,並導致日志備份失敗。

2. 為何完整備份沒有報錯呢?因為完整備份只需要少量的事務日志。

【3】解決思路

SQL Server 沒有重建事務日志鏈的工具和直接方法。建議重建事務日志鏈:

1. 停止該數據庫所有的事務;

2. 執行完整備份;

3. 將數據庫的恢復模式改為“簡單”,此步驟將刪除原來的事務日志鏈。如有大量緩沖區的數據未回寫硬盤,請執行 checkpoint。如有必要,可收縮事務日志文件。

4. 再將數據庫的恢復模式改回“完整”;

5. 執行完整備份,此步驟將重建事務日志鏈;

6. 可繼續執行事務日志備份。

 

轉自:https://blog.51cto.com/jimshu/1970418


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM