Simptom:

Atunci când se utilizează DBCC CHECKDB cu REPAIR_ALLOW_DATA_LOSS parametru pentru a repara o bază de date .MDF coruptă, astfel:

DBCC CHECKDB(xxxx, „REPAIR_ALLOW_DATA_LOSS”)

vedeți următorul mesaj de eroare:

Msg 5125, nivelul 24, starea 2, linia 2
Fișierul „C:Program FilesMicrosoft SQL ServerMSSQL12.SQL2014MSSQLDATAError1.mdf' pare să fi fost trunchiat de sistemul de operare. Dimensiunea estimată este de 5120 KB, dar dimensiunea reală este de 5112 KB.
Msg 3414, nivelul 21, starea 1, linia 2
A apărut o eroare în timpul recuperării, împiedicând baza de date „Eroare1” (39:0) de la restarting. Diagnosticați erorile de recuperare și remediați-le sau restaurați dintr-o copie de rezervă bună cunoscută. Dacă erorile nu sunt corectate sau așteptate, contactați asistența tehnică.

unde „Eroare1” este numele bazei de date MDF corupte care este reparată.

5125 eroarea este mai degrabă o eroare de alocare și nici o eroare de consistență. Apare atunci când partea din coada fișierului MDB este eliminată, din cauza coruperii datelor.

Captură de ecran a mesajului de eroare:

Explicație precisă:

Când partea din coada fișierului MDB este eliminată, CHECKDB va raporta 5125 eroare și încercați să o remediați. Dacă baza de date nu poate fi remediată, atunci va produce 3414 eroare.

De fapt, baza de date poate fi recuperată, dacă folosiți produsul nostru DataNumen SQL Recovery pentru a face sarcina.

Exemple de fișiere:

SQL Server versiune Fișier MDF corupt Fișier MDF reparat de DataNumen SQL Recovery
SQL Server 2014 Error8MDF Error8_fixed.mdf

Referinte: