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 I/O bazată pe consistența logică: pagină ruptă (semnătură așteptată: 0x########; semnătură reală: 0x#######). A avut loc în timpul unei citiri a paginii (#:#) în ID-ul bazei de date # la offset ### în fișierul „xxxx.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.

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. SQL Server folosește două mecanisme pentru a se asigura de consistența și integrarea datelor în pagină, adică sumă de control sau pagină ruptă. Ambele sunt optionale.

If SQL Server găsește că paginile rupte pentru 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 Error5_1.mdf Error5_1_fixed.mdf
SQL Server 2008 R2 Error5_2.mdf Error5_2_fixed.mdf
SQL Server 2012 Error5_3.mdf Error5_3_fixed.mdf
SQL Server 2014 Error5_4.mdf Error5_4_fixed.mdf