您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Sqlserver查看数据库死锁的SQL语句

bubuko 2022/1/25 20:08:52 sqlserver 字数 1890 阅读 648 来源 http://www.bubuko.com/infolist-5-1.html

在Sqlsever数据库中,有时候操作数据库过程中会进行锁表操作,在锁表操作的过程中,有时候会出现死锁的情况出现,这时候可以使用SQL语句来查询数据库死锁情况,主要通过系统数据库Master数据库来查询,涉及到的系统数据表有dm_exec_requests、dm_exec_sessions、dm_e ...

在Sqlsever数据库中,有时候操作数据库过程中会进行锁表操作,在锁表操作的过程中,有时候会出现死锁的情况出现,这时候可以使用SQL语句来查询数据库死锁情况,主要通过系统数据库Master数据库来查询,涉及到的系统数据表有dm_exec_requests、dm_exec_sessions、dm_exec_sql_text等几个表。

SQL查询语句如下:

SELECT 
    es.session_id,
    database_name = DB_NAME(er.database_id),
    er.cpu_time,
    er.reads,
    er.writes,
    er.logical_reads,
    login_name,
    er.status,
    blocking_session_id,
    wait_type,
    individual_query = SUBSTRING (qt.text, er.statement_start_offset/2, (CASE WHEN er.statement_end_offset = -1 THEN LEN(CONVERT(NVARCHAR(MAX), qt.text)) * 2 ELSE er.statement_end_offset END - er.statement_start_offset)/2),
    parent_query = qt.text,
    program_name,
    host_name,
    nt_domain,
    start_time
FROM 
    sys.dm_exec_requests er
    INNER JOIN sys.dm_exec_sessions es ON er.session_id = es.session_id
    CROSS APPLY sys.dm_exec_sql_text(er.sql_handle)as qt
WHERE 
    es.session_id > 50           
    AND es.session_Id NOT IN (@@SPID) 
ORDER BY 
    1, 2

 

原文出自:Sqlserver查看数据库死锁的SQL语句_IT技术小趣屋

Sqlserver查看数据库死锁的SQL语句

原文:https://www.cnblogs.com/chenboyhd/p/12396241.html


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶