Síntoma:
Ao usar DBCC CHECKDB con REPAIR_ALLOW_DATA_LOSS parámetro para reparar unha base de datos .MDF corrupta, como este:
DBCC CHECKDB(xxxx, 'REPAIR_ALLOW_DATA_LOSS')
ves a seguinte mensaxe de erro:
Msg 824, nivel 24, estado 2, liña 2
SQL Server detectou un erro de E/S baseado na coherencia lóxica: ID de páxina incorrecto (esperado 1:143; real 0:9). Ocorreu durante a lectura da páxina (1:143) na ID de base de datos 39 no desfase 0x0000000011e000 no ficheiro "C:Program FilesMicrosoft". SQL ServerMSSQL12.SQL2014MSSQLDATAError1.mdf'. Mensaxes adicionais no SQL Server O rexistro de erros ou o rexistro de eventos do sistema pode proporcionar máis detalles. Esta é unha condición de erro grave que ameaza a integridade da base de datos e que debe ser corrixida inmediatamente. Complete unha comprobación completa da coherencia da base de datos (DBCC CHECKDB). Este erro pode ser causado por moitos factores; para máis información, consulte SQL Server Libros Online.
Msg 3313, nivel 21, estado 1, liña 2
Durante a refacer unha operación rexistrada na base de datos "Erro1", produciuse un erro no ID do rexistro de rexistro (135:752:2). Normalmente, o fallo específico rexistrase previamente como un erro no servizo de rexistro de eventos de Windows. Restaura a base de datos a partir dunha copia de seguridade completa ou repara a base de datos.
Msg 3414, nivel 21, estado 1, liña 2
Produciuse un erro durante a recuperación, impedindo que a base de datos "Error1" (39:0) se restarting. Diagnostica os erros de recuperación e corrixaos ou restaura a partir dunha copia de seguranza coñecida. Se non se corrixen nin se esperan erros, póñase en contacto co soporte técnico.
Msg 824, nivel 24, estado 2, liña 2
SQL Server detectou un erro de E/S baseado na coherencia lóxica: ID de páxina incorrecto (esperado 1:160; real 0:41). Ocorreu durante a lectura da páxina (1:160) na ID de base de datos 39 no desfase 0x00000000140000 no ficheiro "C:Program FilesMicrosoft". SQL ServerMSSQL12.SQL2014MSSQLDATAError1.mdf'. Mensaxes adicionais no SQL Server O rexistro de erros ou o rexistro de eventos do sistema pode proporcionar máis detalles. Esta é unha condición de erro grave que ameaza a integridade da base de datos e que debe ser corrixida inmediatamente. Complete unha comprobación completa da coherencia da base de datos (DBCC CHECKDB). Este erro pode ser causado por moitos factores; para máis información, consulte SQL Server Libros Online.
Msg 824, nivel 24, estado 2, liña 4
SQL Server detectou un erro de E/S baseado na coherencia lóxica: ID de páxina incorrecto (esperado 1:160; real 0:41). Ocorreu durante a lectura da páxina (1:160) na ID de base de datos 39 no desfase 0x00000000140000 no ficheiro "C:Program FilesMicrosoft". SQL ServerMSSQL12.SQL2014MSSQLDATAError1.mdf'. Mensaxes adicionais no SQL Server O rexistro de erros ou o rexistro de eventos do sistema pode proporcionar máis detalles. Esta é unha condición de erro grave que ameaza a integridade da base de datos e que debe ser corrixida inmediatamente. Complete unha comprobación completa da coherencia da base de datos (DBCC CHECKDB). Este erro pode ser causado por moitos factores; para máis información, consulte SQL Server Libros Online.
onde "Error1" é o nome da base de datos MDF corrupta que se está a reparar.
Mensaxe 3313 indica que non se pode realizar unha operación de rexistro.
Captura de pantalla da mensaxe de erro:
Explicación precisa:
Cando CHECKDB non pode realizar a operación rexistrada, informará da mensaxe de erro Mensaxe 3313 e tentar corrixir os erros. Se non pode solucionar o erro, a recuperación falla e provocará máis erros, como Msg 3414 e Msg 824.
Podes usar o noso produto DataNumen SQL Recovery para recuperar os datos do ficheiro MDF corrupto e resolver este erro.
Ficheiros de mostra:
Mostra ficheiros MDF corruptos que provocarán o Mensaxe 3313 erro:
SQL Server versión | Ficheiro MDF danado | Arquivo MDF corrixido por DataNumen SQL Recovery |
SQL Server 2014 | Erro9.mdf | Erro9_fixed.mdf |