Síntoma:
Cando se tenta anexar unha base de datos .MDF en SQL Server, ves a seguinte mensaxe de erro:
Produciuse un erro ao conectar a base de datos para o servidor "xxx". (Microsoft.SqlServer.Smo)
Produciuse unha excepción ao executar unha instrución ou un lote Transact-SQL. (Microsoft.SqlServer.ConnectionInfo)
A cabeceira do ficheiro 'xxx.mdf' non é unha cabeceira de ficheiro de base de datos válida. A propiedade FILE SIZE é incorrecta.(Micosoft SQL Server, Erro: 5172)
onde "xxx.mdf" é o nome do ficheiro MDF que se vai anexar.
Captura de pantalla da mensaxe de erro:
Explicación precisa:
Os datos dun ficheiro MDF gárdanse como páxinas, sendo cada páxina un tamaño de 8 KB. A primeira páxina, chamada páxina de cabeceira do ficheiro, contén o most información importante sobre todo o ficheiro, incluíndo a sinatura do ficheiro, o tamaño, a compatibilidade e outros detalles esenciais.
Se a páxina de cabeceira do ficheiro MDF está danada ou corrompida e Microsoft non pode recoñecela SQL Server, Entón SQL Server pensará que a cabeceira non é válida e informará deste erro.
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 erro:
SQL Server versión | Ficheiro MDF danado | Arquivo MDF corrixido por DataNumen SQL Recovery |
SQL Server 2005 | Erro2_1.mdf | Erro2_1_fixed.mdf |
SQL Server 2008 R2 | Erro2_2.mdf | Erro2_2_fixed.mdf |
SQL Server 2012 | Erro2_3.mdf | Erro2_3_fixed.mdf |
SQL Server 2014 | Erro2_4.mdf | Erro2_4_fixed.mdf |