我曾尝试下面的代码,杀人比Master
数据库其他的SQL连接杀死活动连接保持:SQL服务器:通过主数据库
DECLARE @kill varchar(8000) = '';
SELECT @kill = @kill + 'kill ' + CONVERT(varchar(5), session_id) + ';'
FROM sys.dm_exec_sessions
WHERE database_id = db_id('MyDB')
EXEC(@kill);
此代码为我工作得很好。但是当我运行下面查询看到更多的活动连接,然后我发现我的MASTER数据库有21个活动连接。
SELECT
DB_NAME(dbid) as DBName,
COUNT(dbid) as NumberOfConnections,
loginame as LoginName
FROM
sys.sysprocesses
WHERE
dbid > 0
GROUP BY
dbid, loginame
,而我想关闭与主数据库所有活动的连接,然后它失败,错误信息是:“不能用杀来杀自己的过程”
请让我知道,我怎么能从'sa'帐户持有的MASTER数据库中终止所有21个活动连接?
非常感谢您的支持。
/保罗
你是否从不同的数据库运行代码?另外,确保没有活动窗口打开,指向'master'数据库。 –
嗨,埃里克,谢谢,是的,我做了,然后错误信息是“只有用户进程可以被杀死”。现在,我正在研究这些连接是如何由'sa'及其大约23个并且始终处于活动状态的。 – Paul