症狀:

使用時 DBCC 檢查數據庫 REPAIR_ALLOW_DATA_LOSS 修復 修復損壞的.MDF數據庫的參數,如下所示:

DBCC CHECKDB(xxxx,'REPAIR_ALLOW_DATA_LOSS')

您看到以下錯誤消息:

消息824,級別24,狀態2,行2
SQL Server 檢測到基於邏輯一致性的I / O錯誤:錯誤的pageid(預期為1:143;實際為0:9)。 在讀取文件'C:Program FilesMicrosoft中偏移量1x143e39的數據庫ID 0中的頁面(0000000011:000)時發生 SQL ServerMSSQL12.SQL2014MSSQLDATAError1.mdf”。 中的其他消息 SQL Server 錯誤日誌或系統事件日誌可能會提供更多詳細信息。 這是嚴重的錯誤情況,威脅數據庫的完整性,必須立即更正。 完成完整的數據庫一致性檢查(DBCC CHECKDB)。 此錯誤可能是由多種因素引起的; 有關更多信息,請參見 SQL Server 在線書籍。
消息3313,級別21,狀態1,行2
重做數據庫'Error1'中的已記錄操作期間,日誌記錄ID(135:752:2)發生錯誤。 通常,以前,特定故障在Windows事件日誌服務中記錄為錯誤。 從完全備份還原數據庫,或修復數據庫。
消息3414,級別21,狀態1,行2
恢復期間發生錯誤,阻止了數據庫'Error1'(39:0)的恢復tar婷診斷恢復錯誤並進行修復,或者從已知的良好備份中恢復。 如果錯誤沒有得到糾正或預期,請聯繫技術支持。
消息824,級別24,狀態2,行2
SQL Server 檢測到基於邏輯一致性的I / O錯誤:錯誤的pageid(預期為1:160;實際為0:41)。 它是在讀取文件'C:Program FilesMicrosoft中偏移量1x160的數據庫ID 39中的頁面(0:00000000140000)期間發生的 SQL ServerMSSQL12.SQL2014MSSQLDATAError1.mdf”。 中的其他消息 SQL Server 錯誤日誌或系統事件日誌可能會提供更多詳細信息。 這是嚴重的錯誤情況,威脅數據庫的完整性,必須立即更正。 完成完整的數據庫一致性檢查(DBCC CHECKDB)。 此錯誤可能是由多種因素引起的; 有關更多信息,請參見 SQL Server 在線書籍。
消息824,級別24,狀態2,行4
SQL Server 檢測到基於邏輯一致性的I / O錯誤:錯誤的pageid(預期為1:160;實際為0:41)。 它是在讀取文件'C:Program FilesMicrosoft中偏移量1x160的數據庫ID 39中的頁面(0:00000000140000)期間發生的 SQL ServerMSSQL12.SQL2014MSSQLDATAError1.mdf”。 中的其他消息 SQL Server 錯誤日誌或系統事件日誌可能會提供更多詳細信息。 這是嚴重的錯誤情況,威脅數據庫的完整性,必須立即更正。 完成完整的數據庫一致性檢查(DBCC CHECKDB)。 此錯誤可能是由多種因素引起的; 有關更多信息,請參見 SQL Server 在線書籍。

其中“ Error1”是要修復的損壞的MDF數據庫的名稱。

訊息3313 表示無法執行日誌操作。

錯誤消息的屏幕截圖:

精確說明:

當CHECKDB無法執行記錄的操作時,它將報告錯誤消息 訊息3313 並嘗試修復錯誤。 如果無法解決該錯誤,則恢復將失敗,並會導致更多錯誤,例如 消息3414和消息824.

您可以使用我們的產品 DataNumen SQL Recovery 從損壞的MDF文件中恢復數據並解決此錯誤。

樣本文件:

樣本損壞的MDF文件將導致 訊息3313 error:

SQL Server 版本 MDF文件損壞 MDF文件由固定 DataNumen SQL Recovery
SQL Server 2014 錯誤9.mdf 錯誤9_fixed.mdf

參考文獻: