回 帖 发 新 帖 刷新版面

主题:求KILL 终止进程的用法

--连接A:
use db_test
go
create table T_b(f1 int)
begin tran 
insert into T_a select 1
union select 2
union select 3
waitfor delay'0:00:50'
commit tran

--连接B:
use db_test
dbcc opentran
/*------结果---------
数据库 'DB_TEST' 的事务信息。

最早的活动事务:
    SPID(服务器进程 ID): 51
    UID(用户 ID): 1
    名称          : user_transaction
    LSN           : (5:56:1)
    启动时间    : 01  9 2007  9:53:03:750PM
DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系.*/

--连接C:
use db_test
kill 51
/*错误服务器: 消息 6115,级别 16,状态 1,行 2
无法在用户事务内部使用 KILL 命令。*/
----kill不是终止spid为51的进程吗?结果连接A依然执行成功啊


--改为在master环境中
--连接C:

use master
kill 51
/*            结果
当连接A的事务还在执行中时返回的错误信息如下:
服务器: 消息 6104,级别 16,状态 1,行 3
不能用 KILL 来取消您自己的进程。*/

回复列表 (共1个回复)

沙发

--顶,自己搞定了 ,就是在51号进程空闲的时候使用 
use db_name
kill 51
--就搞定了

我来回复

您尚未登录,请登录后再回复。点此登录或注册