我试图恢复我的数据库的SQL Server备份文件,但它抛出一个错误如下:

备份集保存现有数据库以外的数据库的备份

我的数据库是SQL Server 2008,备份文件是2005年的。

会有什么问题呢?


当前回答

有些人把这个问题看得太复杂了。我发现这非常简单。

1)创建一个与你的.bak文件数据库名称相同的数据库

2)右键单击数据库| Tasks >恢复>数据库

3)在“还原源”下选择“从设备”

4)选择“。bak”文件

5)在下面的网格视图中选中数据库对应的复选框

6)在右侧的“选择页面”下选择“选项”

7)选中“保留复制设置(WITH KEEP_REPLICATION)”复选框

现在返回到General页面,单击OK恢复数据库…就是这样。

其他回答

我通过另一种方式完成工作,使用生成脚本。这对我来说确实有用,因为由于同样的错误,Backup-Restore没有帮助解决这个问题。

:

1)在使用RESTORE命令时使用WITH REPLACE(如果使用GUI,则在Options ->覆盖现有数据库(WITH REPLACE))。

2)删除冲突的旧数据库,使用restore命令重新恢复。

查看链接了解更多细节。

在选项中,将“还原为”文件名称更改为新的数据库mdf和ldf。它引用源数据库的.mdf和.ldf文件。

system.data.sqlclient。sqlerror:备份集保存现有'Dbname'数据库以外的数据库的备份

我是来寻找灵魂的

不要使用相同或不同的数据库名称创建数据库! 右键单击数据库| Tasks >恢复>数据库 在“还原源”下选择“从设备” 选择.bak文件 在下面的网格视图中选中数据库的复选框 到数据库:“这里您可以键入新的数据库名称”(例如:DemoDB) 不要从下拉列表中选择现有数据库 现在点击Ok按钮,它将创建一个新的数据库,并从你的。bak文件中恢复所有数据。

你甚至可以从这个链接得到帮助

希望这将有助于解决您的问题…

我今天遇到了类似的问题。尝试了以上所有的解决方案,但都没有效果。把我的解写在这里。

在恢复之前,不要忘记取消选择尾长备份

希望它也能帮助到其他人!