Simptom:

Când atașați o bază de date .MDF în SQL Server, vedeți următorul mesaj de eroare:

SQL Server a detectat o eroare de I/O bazată pe consistența logică: sumă de control incorectă (așteptată: 0x2abc3894; real: 0x2ebe208e). A avut loc în timpul citirii paginii (1:1) în ID-ul bazei de date 12 la offset 0x00000000002000 în fișierul „xxx.mdf”. Mesaje suplimentare în SQL Server jurnalul de erori sau jurnalul de evenimente de sistem poate oferi mai multe detalii. Aceasta este o condiție de eroare gravă care amenință integritatea bazei de date și trebuie corectată imediat. Finalizați o verificare completă a coerenței bazei de date (DBCC CHECKDB). Această eroare poate fi cauzată de mulți factori; pentru mai multe informații, vezi SQL Server Cărți online. (Microsoft SQL Server, Eroare: 824)

unde „xxx.mdf” este numele fișierului MDF care este accesat.

Uneori, baza de date .MDF poate fi atașată cu succes. Cu toate acestea, atunci când încercați să executați o instrucțiune SQL, cum ar fi

SELECTAȚI * DIN [TestDB].[dbo].[test_table_1]

veți primi și mesajul de eroare de mai sus.

Captură de ecran a mesajului de eroare:

Explicație precisă:

Datele din fișierul MDF sunt stocate ca pagini, fiecare pagină are 8KB. Fiecare pagină are un câmp opțional pentru suma de control.

If SQL Server găsește că valorile sumei de control din unele dintre paginile de date sunt invalide, apoi va raporta această eroare.

Puteți folosi produsul nostru DataNumen SQL Recovery pentru a recupera datele din fișierul MDF corupt și pentru a rezolva această eroare.

Exemple de fișiere:

Exemple de fișiere MDF corupte care vor cauza eroarea:

SQL Server versiune Fișier MDF corupt Fișier MDF reparat de DataNumen SQL Recovery
SQL Server 2005 Error4_1.mdf Error4_1_fixed.mdf
SQL Server 2008 R2 Error4_2.mdf Error4_2_fixed.mdf
SQL Server 2012 Error4_3.mdf Error4_3_fixed.mdf
SQL Server 2014 Error4_4.mdf Error4_4_fixed.mdf