sql server 查询死锁进程及死锁检测

use master  
go  
  
--检索死锁进程  
select spid, blocked, loginame, last_batch, status, cmd, hostname, program_name  
from sysprocesses  
where spid in  
( select blocked from sysprocesses where blocked <> 0 ) or (blocked <>0)  


--死锁检测 
use master 
Select * from sysprocesses where blocked<>0 
--找到SPID   
exec sp_lock 
--根据SPID找到OBJID 
select object_name(674101442) 
--根据OBJID找到表名


--查看当前数据库服务器的所有链接
select * from openrowset('SQLOLEDB','192.0.0.1';'sa';'P@sss','sp_who')


--查看被锁表
select   request_session_id   spid,OBJECT_NAME(resource_associated_entity_id) tableName   from   sys.dm_tran_locks where resource_type='OBJECT' 
--ORder BY request_session_id 
--spid   锁表进程 tableName   被锁表名 解锁: 
declare @spid  int Set @spid  = 75 
--锁表进程
declare @sql varchar(1000)set @sql='kill '+cast(@spid  as varchar)
exec(@sql)

 

以上方法都是网上汇总。

转载于:https://www.cnblogs.com/blue-Sea/p/5341040.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值