天天看點

達夢資料庫會話阻塞查詢

在應用系統運作的過程中,會出現卡慢的情況,有可能是會話之間出現了阻塞。通過以下語句可以查詢活動會話是否發生了阻塞。

with locks as(

  select o.name,l.*,s.sess_id,s.sql_text,s.clnt_ip,s.last_send_time  from v$lock l,sysobjects o,v$sessions s

  where l.table_id=o.id and l.trx_id=s.trx_id ),

 lock_tr as (   select trx_id wt_trxid,row_idx blk_trxid from locks where blocked=1),

 res as(    select sysdate stattime,t1.name,t1.sess_id wt_sessid,s.wt_trxid,

     t2.sess_id blk_sessid,s.blk_trxid,t2.clnt_ip,SF_GET_SESSION_SQL(t1.sess_id) fulsql,

     datediff(ss,t1.last_send_time,sysdate) ss,t1.sql_text wt_sql  from lock_tr s,locks t1,locks t2

    where t1.ltype='OBJECT'  and t1.table_id<>0   and t2.ltype='OBJECT'  and t2.table_id<>0

     and s.wt_trxid=t1.trx_id  and s.blk_trxid=t2.trx_id)

select distinct wt_sql,clnt_ip,ss,wt_trxid,blk_trxid  from res;

更多資訊請上達夢技術社群了解: https://eco.dameng.com