症状:

当尝试在SQL Server中附加.MDF数据库时,您会看到以下错误消息:

为服务器“xxx”连接数据库失败。(Microsoft.SqlServer.Smo)

在执行Transact-SQL语句或批处理时发生异常。(Microsoft.SqlServer.ConnectionInfo)

文件“xxx”的头文件。Mdf '不是一个有效的数据库文件头。FILE SIZE属性不正确。(microsoft SQL Server,错误:5172)

“xxx。mdf '是要附加的mdf文件的名称。

错误提示截图:

精确的解释:

MDF文件中的数据以页的形式存储,每页为8KB。第一页称为文件头页,其中包含了整个文件最重要的信息,如文件签名、文件大小、兼容性等。

如果MDF文件头页损坏或损坏,并且不能被Microsoft SQL Server识别,那么SQL Server将认为头是无效的并报告此错误。

你可以使用我们的产品DataNumen SQL恢复从损坏的MDF文件中恢复数据并解决此错误。

示例文件:

示例损坏的MDF文件将导致错误:

SQL Server版本 损坏的MDF文件 MDF文件固定DataNumen SQL恢复
SQL Server 2005 Error2_1.mdf Error2_1_fixed.mdf
SQL Server 2008 R2 Error2_2.mdf Error2_2_fixed.mdf
SQL Server 2012 Error2_3.mdf Error2_3_fixed.mdf
SQL Server 2014 Error2_4.mdf Error2_4_fixed.mdf