zoukankan      html  css  js  c++  java
  • 查询锁事务及语句

    if exists(select * from master.sys.sysprocesses where spid in (select blocked from master.sys.sysprocesses))
    
    begin
    
    ---确定进程被锁住的其他资源
    
    select spid 进程,STATUS 状态, 登录帐号=SUBSTRING(SUSER_SNAME(sid),1,30)
    
    ,用户机器名称=SUBSTRING(hostname,1,12)
    
    ,是否被锁住=convert(char(3),blocked)
    
    ,数据库名称=SUBSTRING(db_name(dbid),1,20),cmd 命令,waittype as 等待类型
    
    ,last_batch 最后批处理时间,open_tran 未提交事务的数量
    
    from master.sys.sysprocesses
    
    --列出锁住别人(在别的进程中blocked字段中出现的值)但自己未被锁住(blocked=0)
    
    Where spid in (select blocked from master.sys.sysprocesses) and blocked=0
    
    end
    
    else 
    
    begin
    
    select '没有被锁住的进程'
    
    end 
    
    select t1.resource_type [资源锁定类型],DB_NAME(resource_database_id) as 数据库名
    
    ,t1.resource_associated_entity_id 锁定对象,t1.request_mode as 等待者请求的锁定模式
    
    ,t1.request_session_id 等待者SID
    
    ,t2.wait_duration_ms 等待时间
    
    ,(select TEXT from sys.dm_exec_requests r cross apply
    
    sys.dm_exec_sql_text(r.sql_handle) where r.session_id=t1.request_session_id) as 等待者要执行的SQL
    
    ,(select SUBSTRING(qt.text,r.statement_start_offset/2+1,
    
    (case when r.statement_end_offset=-1 then DATALENGTH(qt.text) else r.statement_end_offset end -r.statement_start_offset)/2+1
    
    )
    
    from sys.dm_exec_requests r cross apply sys.dm_exec_sql_text(r.sql_handle)qt
    
    where r.session_id=t1.request_session_id) 等待者正要执行的语句
    
    ,t2.blocking_session_id [锁定者SID]
    
    ,(select TEXT from sys.sysprocesses p cross apply
    
    sys.dm_exec_sql_text(p.sql_handle)
    
    where p.spid=t2.blocking_session_id
    
    ) 锁定者执行语句
    
    from sys.dm_tran_locks t1,sys.dm_os_waiting_tasks t2
    
    where t1.lock_owner_address=t2.resource_address
    

      

  • 相关阅读:
    UOJ #455 [UER #8]雪灾与外卖 (贪心、模拟费用流)
    Codeforces 482E ELCA (LCT)
    Codeforces 798D Mike and distribution (构造)
    AtCoder AGC017C Snuke and Spells
    HDU 6089 Rikka with Terrorist (线段树)
    HDU 6136 Death Podracing (堆)
    AtCoder AGC032D Rotation Sort (DP)
    jenkins+python+kubectl实现批量更新k8s镜像
    Linux 下载最新kubectl版本的命令:
    jenkins X 和k8s CI/CD
  • 原文地址:https://www.cnblogs.com/junko/p/3726230.html
Copyright © 2011-2022 走看看