我有一个关于Server 2008的数据库,我想删除它。目前它处于单用户模式,目前正在使用中。
select * from sys.sysprocesses返回
Msg 924, Level 14, State 1, Line 1
Database 'G_MAIN_DE' is already open and can only have one user at a time.我不知道该怎么找出我要杀的那个人。
尝试将其设置为脱机
ALTER DATABASE G_MAIN_DE SET OFFLINE WITH ROLLBACK IMMEDIATE产量
Msg 5064, Level 16, State 1, Line 1
Changes to the state or options of database 'G_MAIN_DE' cannot be made at this time. The database is in single-user mode, and a user is currently connected to it.
Msg 5069, Level 16, State 1, Line 1
ALTER DATABASE statement failed.发布于 2013-09-06 09:32:32
若要标识当前使用数据库的会话,可以尝试
SELECT request_session_id
FROM sys.dm_tran_locks
WHERE resource_database_id = DB_ID('G_MAIN_DE') 发布于 2013-09-08 08:36:11
此内置存储过程显示到数据库的所有连接。
exec sp_who2此查询将终止对数据库的连接,例如连接SPID #53。
exec kill 53发布于 2013-09-06 18:35:25
最简单的方法就是使用SSMS活动监视器(右击服务器/活动监视器/进程)。按数据库排序。杀死任何进程控制DB。您还可能希望在将DB设置为单用户并执行删除操作之前发出杀死命令。
https://dba.stackexchange.com/questions/49385
复制相似问题