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 824, Level 24, State 2, Line 2
SQL Server registreret en logisk konsistensbaseret I / O-fejl: forkert sideid (forventet 1: 143; faktisk 0: 9). Det opstod under en læsning af side (1: 143) i database-ID 39 ved forskydning 0x0000000011e000 i fil 'C: Program Files Microsoft SQL ServerMSSQL12.SQL2014MSSQLDATAError1.mdf '. Yderligere meddelelser i SQL Server fejllog eller systemhændelseslog kan give flere detaljer. Dette er en alvorlig fejltilstand, der truer databaseintegritet og skal rettes med det samme. Udfør en komplet kontrol af databasekonsistens (DBCC CHECKDB). Denne fejl kan skyldes mange faktorer; for mere information, se SQL Server Bøger online.
Msg 3313, Level 21, State 1, Line 2
Under gentagelse af en logget handling i databasen 'Fejl1' opstod der en fejl ved log-record-id (135: 752: 2). Typisk er den specifikke fejl tidligere logget som en fejl i Windows Event Log-tjenesten. Gendan databasen fra en fuld sikkerhedskopi, eller reparer databasen.
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.
Msg 824, Level 24, State 2, Line 2
SQL Server registreret en logisk konsistensbaseret I / O-fejl: forkert sideid (forventet 1: 160; faktisk 0:41). Det opstod under en læsning af side (1: 160) i database-ID 39 ved forskydning 0x00000000140000 i fil 'C: Program FilesMicrosoft SQL ServerMSSQL12.SQL2014MSSQLDATAError1.mdf '. Yderligere meddelelser i SQL Server fejllog eller systemhændelseslog kan give flere detaljer. Dette er en alvorlig fejltilstand, der truer databaseintegritet og skal rettes med det samme. Udfør en komplet kontrol af databasekonsistens (DBCC CHECKDB). Denne fejl kan skyldes mange faktorer; for mere information, se SQL Server Bøger online.
Msg 824, Level 24, State 2, Line 4
SQL Server registreret en logisk konsistensbaseret I / O-fejl: forkert sideid (forventet 1: 160; faktisk 0:41). Det opstod under en læsning af side (1: 160) i database-ID 39 ved forskydning 0x00000000140000 i fil 'C: Program FilesMicrosoft SQL ServerMSSQL12.SQL2014MSSQLDATAError1.mdf '. Yderligere meddelelser i SQL Server fejllog eller systemhændelseslog kan give flere detaljer. Dette er en alvorlig fejltilstand, der truer databaseintegritet og skal rettes med det samme. Udfør en komplet kontrol af databasekonsistens (DBCC CHECKDB). Denne fejl kan skyldes mange faktorer; for mere information, se SQL Server Bøger online.

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

Meddelelse 3313 angiver, at en logfunktion ikke kan udføres.

Skærmbillede af fejlmeddelelse:

Præcis forklaring:

Når CHECKDB ikke kan udføre en logget handling, rapporterer den fejlmeddelelsen Meddelelse 3313 og prøv at rette fejlene. Hvis det ikke kan rette fejlen, mislykkes gendannelsen og vil føre til flere fejl, f.eks Msg 3414 og Msg 824.

Du kan bruge vores produkt DataNumen SQL Recovery for at gendanne dataene fra den korrupte MDF-fil og løse denne fejl.

Prøvefiler:

Prøve korrupte MDF-filer, der vil forårsage Meddelelse 3313 fejl:

SQL Server udgave Korrupt MDF-fil MDF-fil rettet af DataNumen SQL Recovery
SQL Server 2014 Fejl9.mdf Fejl9_fixed.mdf

Referencer: