Příznak:

Při použití DBCC CHECKDB s REPAIR_ALLOW_DATA_LOSS parametr pro opravu poškozené databáze .MDF, například:

DBCC CHECKDB (xxxx, 'REPAIR_ALLOW_DATA_LOSS')

zobrazí se následující chybová zpráva:

Msg 5125, úroveň 24, stav 2, řádek 2
Soubor 'C: Program FilesMicrosoft SQL ServerZdá se, že operační systém MSSQL12.SQL2014MSSQLDATAError1.mdf 'byl zkrácen. Očekávaná velikost je 5120 kB, ale skutečná velikost je 5112 kB.
Msg 3414, úroveň 21, stav 1, řádek 2
Během obnovy došlo k chybě, která znemožnila res. Databázi 'Error1' (39: 0)tarting. Diagnostikujte chyby obnovení a opravte je nebo obnovte ze známé dobré zálohy. Pokud chyby nejsou opraveny nebo očekávány, kontaktujte technickou podporu.

kde „Chyba1“ je název poškozené databáze MDF, která se opravuje.

Zpráva 5125 chyba je blíže chybě přidělení ani chybě konzistence. Dochází k ní při odebrání části ocasu souboru MDB z důvodu poškození dat.

Screenshot chybové zprávy:

Přesné vysvětlení:

Když je odstraněna část ocasu souboru MDB, CHECKDB podá zprávu Zpráva 5125 chyba a zkuste to opravit. Pokud databázi nelze opravit, vytvoří se Zpráva 3414 chyba.

Ve skutečnosti lze databázi také obnovit, pokud používáte náš produkt DataNumen SQL Recovery udělat úkol.

Ukázkové soubory:

SQL Server verze Poškozený soubor MDF Soubor MDF opraven DataNumen SQL Recovery
SQL Server 2014 Error8MDF Error8_fixed.mdf

Reference: