SqlServer如何查看死锁的进程

查看当前死锁

复制代码
SELECT
    request_session_id spid,
    OBJECT_NAME(
        resource_associated_entity_id
    ) tableName
FROM
    sys.dm_tran_locks
WHERE
    resource_type = 'OBJECT'
复制代码

 

查看死锁进程

复制代码
SELECT * FROM sys.dm_exec_connections;
SELECT * FROM sys.dm_exec_sessions;
SELECT spid , blocked , DB_NAME (sp.dbid) AS DBName , program_name , waitresource , lastwaittype , sp.loginame , sp.hostname , a.[Text] AS [TextData] , SUBSTRING (A. TEXT, sp.stmt_start / 2, (CASE WHEN sp.stmt_end = -1 THEN DATALENGTH (A. TEXT) ELSE sp.stmt_end END - sp.stmt_start) / 2) AS [current_cmd] FROM sys.sysprocesses AS sp OUTER APPLY sys.dm_exec_sql_text (sp.sql_handle) AS A WHERE spid > 50 ORDER BY blocked DESC, DB_NAME (sp.dbid) ASC, a.[text]
复制代码

 

 

杀掉死锁进程

kill spid

 

批量杀死锁

复制代码
DECLARE @SQL VARCHAR(MAX);
SET @SQL=''
SELECT @SQL=@SQL+'; KILL '+RTRIM(SPID)
FROM [sys].[sysprocesses]
WHERE dbid=DB_ID('Scm');

exec(@SQL);



select * from [sys].[sysprocesses] where dbid = db_id('Scm')
复制代码

 

posted @   茶叶蛋蛋  阅读(538)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示