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

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

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

会有什么问题呢?


当前回答

在执行其他操作之前,请确认备份是全量备份还是差动备份。如果您试图从差异备份中创建一个新数据库,那么无论您做什么,都会遇到错误。

其他回答

我也遇到过这个问题。

解决方案:

不要创建一个空数据库并在其中恢复.bak文件。 使用“恢复数据库”选项,可通过右键单击SQL Server Management Studio的“数据库”分支,并提供数据库名称 提供要恢复的源。 如果另一个数据库仍然存在,也要在“Files”处更改文件名。否则你会得到“The file”…'不能被覆盖。它正在被数据库'yourFirstDb'使用”。

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

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

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

我确定这个问题与文件和文件夹权限有关。

简单3步:

1-右键单击数据库→任务→恢复→数据库

2-检查设备作为源,并找到。bak(或压缩。bak)文件

3-在左侧窗格单击选项和:

check覆盖现有数据库。 恢复前进行尾日志备份 关闭到目标数据库的现有连接。

其他选项都是可选的(当然也很重要)!

:

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

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

查看链接了解更多细节。