SQLServer 2008数据库查看死锁堵塞的SQL语句

Posted YEQ2008K8

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQLServer 2008数据库查看死锁堵塞的SQL语句相关的知识,希望对你有一定的参考价值。

--每秒死锁数量


SELECT  *

FROM    sys.dm_os_performance_counters

WHERE   counter_name LIKE Number of Deadlocksc%;


--查询当前阻塞


WITH    CTE_SID ( BSID, SID, sql_handle )

         AS ( SELECT   blocking_session_id ,

                       session_id ,

                       sql_handle

              FROM     sys.dm_exec_requests

              WHERE    blocking_session_id <> 0

              UNION ALL

              SELECT   A.blocking_session_id ,

                       A.session_id ,

                       A.sql_handle

              FROM     sys.dm_exec_requests A

                       JOIN CTE_SID B ON A.SESSION_ID = B.BSID

            )

   SELECT  C.BSID ,

           C.SID ,

           S.login_name ,

           S.host_name ,

           S.status ,

           S.cpu_time ,

           S.memory_usage ,

           S.last_request_start_time ,

           S.last_request_end_time ,

           S.logical_reads ,

           S.row_count ,

           q.text

   FROM    CTE_SID C  

           JOIN sys.dm_exec_sessions S ON C.sid = s.session_id

           CROSS APPLY sys.dm_exec_sql_text(C.sql_handle) Q

   ORDER BY sid

以上是关于SQLServer 2008数据库查看死锁堵塞的SQL语句的主要内容,如果未能解决你的问题,请参考以下文章

SQLSERVER 2008 查看死锁 存储过程

sqlserver2008 死锁解决方法及性能优化方法

SQL SERVER 集合

sqlserver检测死锁;杀死锁和进程;查看锁信息

SQLServer查看和解决死锁的方法

sqlServer查看死锁及解锁