在SQL Server 2008上还原数据库

时间:2011-06-11 09:45:59

标签: sql-server restore

我正在尝试使用Management Studio GUI恢复数据库,我收到以下错误。

  

设备上的媒体系列   'F:\ xxx.bak'格式不正确。   SQL Server无法处理此媒体   家庭。 RESTORE HEADERONLY是   异常终止。 (Microsoft SQL   服务器,错误:3241)

我很确定此bak文件之前已用于恢复数据库,但使用了RESTORE命令。我看了docs,但我发现它们有点简洁。

有人可以建议sql对我来说成功恢复这个数据库的样子吗?

3 个答案:

答案 0 :(得分:1)

  • 您可以在单击“确定”
  • 之前在SSMS中编写任务脚本
  • RESTORE上的文档就在这里,但基本的想法是RESTORE DATABASE MyDB FROM DISK = 'F:\xxx.bak'

但是,此错误表示文件已损坏或不完整。作为某些FTP或复制过程的一部分,它可能会被破坏。

一个随机的想法:SQL Server帐户是否可以访问您的F:驱动器? (如果无法看到文件,我不记得错误,即使你可以在Windows资源管理器中)

答案 1 :(得分:1)

就像gbn所说,错误消息可能意味着SQL Server看到的BAK文件已损坏。它可能被网络损坏,或存储BAK文件的磁盘或磁盘控制器可能已损坏。

这是一个恢复命令示例:

restore database [DatabaseName]
from  disk = N'c:\Restore\RestoreName.bak'
with file = 1,
    move N'DatabaseName_Data' to N'd:\mssql\data\DatabaseName_Data.MDF', 
    move N'DatabaseName_Log' to N'd:\mssql\data\DatabaseName_Log.LDF', 
     replace

答案 2 :(得分:1)