查找堵塞

--查找堵塞源
 SELECT spid 被锁进程ID, blocked 锁进程ID,status 被锁状态, login_time 登录时间, 
SUBSTRING(SUSER_SNAME(sid),1,30) 被锁进程登陆帐号, 
SUBSTRING(hostname,1,12) 被锁进程用户机器名称, 
SUBSTRING(DB_NAME(dbid),1,13) 被锁进程数据名称, 
cmd 被锁进程命令, 
waittype 被锁进程等待类型
 FROM master.sys.sysprocesses  WHERE SPID>50 and blocked!=0 AND spid<>blocked   order by waittime desc 


 --堵塞源的堵塞类型
 SELECT 
 CASE  WHEN waittime!=0X0000 AND open_tran>=0 AND status='runnable' THEN N'运行时间太长' 
 WHEN waittime=0X0000 AND open_tran>0 AND status='sleeping' THEN N'sleeping进程事物未提交' 
 WHEN waittime in(0x0800,0x0063) AND open_tran>=0 AND status='runnable' THEN N'没有及时取走结果集' 
 WHEN waittime=0X0000 AND open_tran>0 AND status='rollback' THEN N'超时或主动回滚' 
 WHEN waittime>=0X0000 AND open_tran>=0 AND status='runnable' THEN N'死锁以堵塞体现' 
 END  AS Reason,
 b.text SQL,DB_NAME(a.dbid) as DB,program_name,hostname,loginame
 FROM master.sys.sysprocesses a
 CROSS APPLY sys.dm_exec_sql_text(a.sql_handle) b 
 WHERE SPID=346

 

转载于:https://www.cnblogs.com/JinweiChang/p/10449923.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值