症狀:
在附加.MDF數據庫時 SQL Server,您會看到以下錯誤消息:
SQL Server 檢測到基於邏輯一致性的I / O錯誤:錯誤的校驗和(預期:0x2abc3894;實際:0x2ebe208e)。 它發生在讀取數據庫ID 1中頁面(1:12)的過程中,偏移量為文件'xxx.mdf'中的0x00000000002000。 中的其他消息 SQL Server 錯誤日誌或系統事件日誌可能會提供更多詳細信息。 這是嚴重的錯誤情況,威脅數據庫的完整性,必須立即更正。 完成完整的數據庫一致性檢查(DBCC CHECKDB)。 此錯誤可能是由多種因素引起的; 有關更多信息,請參見 SQL Server 在線圖書(Microsoft SQL Server,錯誤:824)
其中“ xxx.mdf”是要訪問的MDF文件的名稱。
有時您可能會成功附加.MDF數據庫。 但是,當您嘗試執行SQL語句時,例如
SELECT * FROM [TestDB]。[dbo]。[test_table_1]
您還將收到上述錯誤消息。
錯誤消息的屏幕截圖:
精確說明:
MDF文件中的數據存儲為頁面,每頁8KB。 每個頁面都有一個可選的校驗和字段。
If SQL Server 如果發現某些數據頁中的校驗和值無效,則將報告此錯誤。
您可以使用我們的產品 DataNumen SQL Recovery 從損壞的MDF文件中恢復數據並解決此錯誤。
樣本文件:
樣本損壞的MDF文件將導致錯誤:
SQL Server 版本 | MDF文件損壞 | MDF文件由固定 DataNumen SQL Recovery |
SQL Server 2005 | 錯誤4_1.mdf | 錯誤4_1_fixed.mdf |
SQL Server 2008 R2 | 錯誤4_2.mdf | 錯誤4_2_fixed.mdf |
SQL Server 2012 | 錯誤4_3.mdf | 錯誤4_3_fixed.mdf |
SQL Server 2014 | 錯誤4_4.mdf | 錯誤4_4_fixed.mdf |