Symptom:

Når du bruger DBCC CHECKDB med REPAIR_ALLOW_DATA_LOSS parameter til at reparere en korrupt .MDF-database, som denne:

DBCC CHECKDB (xxxx, 'REPAIR_ALLOW_DATA_LOSS')

du ser følgende fejlmeddelelse:

Msg 5125, Level 24, State 2, Line 2
File 'C: Program FilesMicrosoft SQL ServerMSSQL12.SQL2014MSSQLDATAError1.mdf 'ser ud til at være blevet afkortet af operativsystemet. Den forventede størrelse er 5120 KB, men den faktiske størrelse er 5112 KB.
Msg 3414, Level 21, State 1, Line 2
Der opstod en fejl under gendannelsen, der forhindrede databasen 'Error1' (39: 0) i at gendannetarting. Diagnostiser gendannelsesfejlene, og rett dem, eller gendan fra en kendt sikkerhedskopi. Kontakt teknisk support, hvis der ikke rettes eller forventes fejl.

hvor 'Error1' er navnet på den korrupte MDF-database, der repareres.

Meddelelse 5125 fejl er nabo en allokeringsfejl eller en konsistensfejl. Det sker, når den del af halen på MDB-filen fjernes på grund af datakorruption.

Skærmbillede af fejlmeddelelse:

Præcis forklaring:

Når den del af halen af ​​MDB-filen er fjernet, CHECKDB vil rapportere Meddelelse 5125 fejl, og prøv at rette det. Hvis databasen ikke kan rettes, produceres den Meddelelse 3414 fejl.

Faktisk kan databasen også gendannes, hvis du bruger vores produkt DataNumen SQL Recovery at udføre opgaven.

Prøvefiler:

SQL Server udgave Korrupt MDF-fil MDF-fil rettet af DataNumen SQL Recovery
SQL Server 2014 Error8.mdf Error8_fixed.mdf

Referencer: