插件窝 干货文章 Sqlserver 死锁查询以及解锁方法

Sqlserver 死锁查询以及解锁方法

死锁 class 进程 Sqlserver 852    来源:    2024-10-16

一、Sqlserver 死锁查询以及解锁方法

(1)下面是查询死锁进程

select 
request_session_id spid,                              (死锁进程id)
OBJECT_NAME(resource_associated_entity_id) tableName  (死锁进程名称)
from sys.dm_tran_locks 
where resource_type='OBJECT'                          (数据类型所有)

(2)杀死死锁进程

declare @spid int                                      //声明id
Set     @spid = 62                                     //设置死锁id
declare @sql varchar(1000)                             //声明sql 
set     @sql='kill '+cast(@spid as varchar)            //设置 kill掉死锁进程
exec    (@sql)                                         //执行

或者
kill 62;

sqlserver查看哪个表被锁表了以及解锁方法

方法一

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

到此这篇关于Sqlserver 死锁查询以及解锁方法的文章就介绍到这了,更多相关Sqlserver 死锁查询内容请搜索插件窝以前的文章或继续浏览下面的相关文章希望大家以后多多支持插件窝!