sqlserver备份还原数据库时报占用错误

Posted 涛声依旧1988

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sqlserver备份还原数据库时报占用错误相关的知识,希望对你有一定的参考价值。

、做项目时遇到这种情形:原来的test_dev数据库,想复制出test_ft供测试用。此时备份test_dev出test_backup文件,想直接还原成test_ft时会报占用错误。

还原数据库:The backup set holds a backup of a database other than the existing database 因为数据库正在使用,所以无法获得对数据库的独占访问权

2、原因:(1)备份文件里面保存着原有数据库及文件名称信息,默认会还原成test_dev数据库,而且file文件仍然为test_dev.mdf和test_dev_log.ldf文件。此时服务器及文件夹中已经存在test_ft及其文件,所以会发生数据库及文件占用冲突。

 

(2)如果将数据库名称和file文件名修改成test_ft时,修改options.1为覆盖原数据库test_ft(如果已经有了)。2千万别勾,不然会将老数据库test_dev设置成恢复状态了。3、单用户模式,关闭其他连接

 

4、附:普通情况下数据库被占用的处理方法

设置数据库在单用户模式下工作。
设置方法:在需要还原的数据库上右击,在右键菜单命令上选择"属性"- >"选项"- >"状态"- >"限制访问"- >"Single"

 

以上是关于sqlserver备份还原数据库时报占用错误的主要内容,如果未能解决你的问题,请参考以下文章

sqlserver日志的备份与还原

sql还原时出现3169错误

SQLSERVER还原数据库失败:错误: 3154

SQLSERVER还原数据库失败:错误: 3154

sqlserver2008还原数据库

sqlserver备份还原后打开表重新连接