Când utilizați Microsoft SQL Server pentru a atașa sau accesa un fișier de bază de date MDF corupt, veți vedea diverse mesaje de eroare, care pot fi puțin confuze pentru dvs. Prin urmare, aici vom încerca să listăm toate erorile posibile, sortate în funcție de frecvența lor. Pentru fiecare eroare, vom descrie simptomele acesteia, îi vom explica motivul exact și vom prezenta fișierele eșantion, precum și fișierul reparat de compania noastră DataNumen SQL Recovery, astfel încât să le puteți înțelege mai bine. Mai jos vom folosi „xxx.MDF” pentru a vă exprima corupția SQL Server Numele fișierului bazei de date MDF.
Bazat pe SQL Server sau mesaje de eroare CHECKDB, există trei tipuri de erori care vor provoca eșecul:

    1. Erori de alocare: Știm că datele din fișierele MDF și NDF sunt alocate ca pagini. Și există câteva pagini speciale care sunt utilizate pentru gestionarea alocării, după cum urmează:
Tipul paginii Descriere
Pagina GAM Stocați informații despre harta de alocare globală (GAM).
Pagina SGAM Stocați informații despre harta de alocare globală partajată (SGAM).
Pagina IAM Stocați informații despre harta de alocare a indexului (IAM).
Pagina PFS Stocați informații despre alocarea PFS.

Dacă oricare dintre paginile de alocare de mai sus au erori sau datele gestionate de aceste pagini de alocare sunt incompatibile cu informațiile de alocare, atunci SQL Server sau CHECKDB va raporta erori de alocare.

  • Erori de consistență: Pentru pagini care sunt utilizate pentru a stoca date, inclusiv paginile de date și paginile index, dacă SQL Server sau CHECKDB constată orice neconcordanță între conținutul paginii și suma de verificare, apoi vor raporta erori de consistență.
  • Toate celelalte erori: Pot exista alte erori care nu se încadrează în cele două categorii de mai sus.

 

SQL Server are un instrument încorporat numit DBCC, care are CHECKDB CHECKTABLE opțiuni care pot ajuta la repararea unei baze de date MDF corupte. Cu toate acestea, pentru fișierele de baze de date MDB grave deteriorate, DBCC CHECKDB CHECKTABLE va eșua, de asemenea.

Erori de coerență raportate de CHECKDB:

Erori de alocare raportate de CHECKDB:

Toate celelalte erori raportate de CHECKDB: