SQL2008 删除堵塞进程 sp_who

来源:互联网 发布:外星人音效软件 编辑:程序博客网 时间:2024/05/21 22:27

1.列出全部当前进程

use master

go

exec sp_who

go


2.列出特定用户的进程

use master

go

exec sp_who 'sa'


3.显示所有活动进程:

use master

go

exec sp_who 'active'


4,显示会话ID标识的特定进程

use master

go

exec sp_who '10'


5.删除阻塞的进程

use master

go

kill 10   // blk列

go


6.sp_who返回包括以下信息的结果集。


spid: smallint   回话ID

ecid:smallint    与特定会话ID相关联的给定线程的执行上下文ID。ECID={0,1,2,3,....n},其中0始终表示主或父线程,并且{1,2,3..n}表示子线程。

statis:nchar(30)  进程状态。

               可有的值:dormant。SQL Server正在重置会话。

                                    running。会话正在运行一个或多个批。

                                                      多个活动的结果集(MARS)启用后,会话可以运行多个批。

                                    background。会话正在运行一个后台任务,例如死锁检测。

                                     rollback。会话具有正在处理的事务回滚。

                                     pending。会话正在等待工作线程变为可用。

                                     runnable。会话的任务再等待获取时间量程时位于计划程序的可运行队列中。

                                     spinloop。会话的任务正在等待调节锁变为可用。

                                     suspended。会话正在等待事件(如I/O)完成。

loginame:nchar(128)  与特定进程相关联的登录名。

hostname:nchar(128) 每个进程的主机或计算机名。

blk:char(5)  如果存在阻塞进程,则是该阻塞进程的会话ID。否则该列为零。

                          当与指定会话ID相关联的事务受到孤立分布式事务的阻塞时,该列将对阻塞孤立事务事务返回-2

dbname:nchar(128) 进程使用的数据库。

cmd:nchar(16)  为该进程执行的数据库引擎命令(Transact-SQL语句、数据库引擎进程等等)。

request_id:int  特定会话中运行的请求的ID。


如果是并行处理,则会为特定的会话ID创建子线程。主线程则以spid=<XXX>和ecid=0表示。其他子线程具有相同的spid=<XXX>,但ecid>0



原创粉丝点击