在还原SQL server数据库时,遇到了

还原 对于 服务器“XXXXX”失败。 (Microsoft.SqlServer.SmoExtended)

有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.50.1600.1+((KJ_RTM).100402-1539+)&EvtSrc=Microsoft.SqlServer.Management.Smo.ExceptionTemplates.FailedOperationExceptionText&EvtID=还原+Server&LinkId=20476

其他信息:

System.Data.SqlClient.SqlError: 备份集中的数据库备份与现有的 'xxxx' 数据库不同。 (Microsoft.SqlServer.Smo)

有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.50.1600.1+((KJ_RTM).100402-1539+)&LinkId=20476

在查阅资料和大佬讨论后,得到了如下的解决方案:

因为是在另一台电脑对同名数据库做的备份,用常规方法还原,提示不是相同数据库,不让还原,用下面的方法解决了:

右击系统数据库master,新建查询

执行以下SQL代码:

RESTORE DATABASE xxx
FROM DISK = 'E:\DB\xxx.bak'   --bak文件路径
with replace,
MOVE 'xxx' TO 'D:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\xxx.mdf',   --mdf文件路径
MOVE 'xxx_log' TO 'D:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\xxx.ldf'   --ldf文件路径

上面方法执行成功后,只有部分的表结构已经还原,而且表中没有数据,这时就可以用系统默认的方法再用xxx.bak文件还原一次数据库就大功告成了,必须要选中覆盖还原即可。

文章作者: 马富贵
本文链接:
版权声明: 本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 寒如水
数据库 Sqlserver SQL
喜欢就支持一下吧