“因为数据库在使用,所以无法获得对数据库的独占访问权”

霖总的小迷弟12023-06-02 20:30上海

在对SQL Server数据库进行还原时,提示:System.Data.SqlClient.SqlError:因为数据库正在使用,所以无法获得对数据库的独占访问权。(Microsoft.SqlServer.Smo)。出现此问题的原因是在还原数据库时,有其他用户正在使用数据库。还原数据库要求数据库工作在单用户模式。通常就是DBA在操作时,不允许其他用户连接数据库。

因为数据库在使用,所以无法获得对数据库的独占访问权 2016以前的版本用  single模式可以解决这个问题 sp_who2看谁在用_SQL

解决方案1.
如果你使用管理工具还原数据库并且在SQL Server Management Studio 2016或以上版本的话,可以在还原的时候勾选"关闭到目标数据库的现有链接"

因为数据库在使用,所以无法获得对数据库的独占访问权 2016以前的版本用  single模式可以解决这个问题 sp_who2看谁在用_数据库_02

解决方案2.
SQL SERVER 2016或以下的版本的
在需要还原的数据库上右击,在右键菜单命令上选择**“属性”- >“选项”- >“状态”- >“限制访问”- >“Single”**
单用户模式,直接还原,完成后把访值改回来

因为数据库在使用,所以无法获得对数据库的独占访问权 2016以前的版本用  single模式可以解决这个问题 sp_who2看谁在用_Server_03

经过以上两种操作方法后,即可解决问题。