通过SQL Server Management Studio还原SQL Server 2008数据库失败时,提示因为数据库正在使用,所以无法获得对数据库的独占访问权。本文介绍这种情况的可能原因和解决方案。
问题现象
通过SQL Server Management Studio还原SQL Server 2008数据库失败时,提示因为数据库正在使用,所以无法获得对数据库的独占访问权。
可能原因
数据库正在被某些进程调用。
解决方案
在SQL Server Management Studio的左侧导航栏,左键单击待还原的数据库。
在菜单栏中,单击新建查询(N)。
在查询窗口中,输入以下命令,单击执行,查询正在调用数据库的进程号。
use master select b.spid from sysdatabases a , sysprocesses b where a.dbid=b.dbid and a.name= '数据库名称'
例如,数据库名称为aa,执行以下命令:
use master select b.spid from sysdatabases a , sysprocesses b where a.dbid=b.dbid and a.name= 'aa'
查询到的调用数据库aa的进程号如下图所示。
在查询窗口中,输入以下命令,停止正在使用数据库的进程,然后单击执行。
kill 调用数据库的进程号
尝试再次还原数据库。
数据库还原成功,如下图所示。
说明如问题仍未解决,请提交工单。
文档内容是否对您有帮助?