MySql检测阻塞,锁等待sql

  1. SELECT      
  2.         p2.`HOST` Blockedhost,  
  3. p2.`USER` BlockedUser,  
  4. r.trx_id BlockedTrxId,      
  5.         r.trx_mysql_thread_id BlockedThreadId,      
  6.         TIMESTAMPDIFF(      
  7.             SECOND,      
  8.             r.trx_wait_started,      
  9.             CURRENT_TIMESTAMP      
  10.         ) WaitTime,      
  11.         r.trx_query BlockedQuery,      
  12.         l.lock_table BlockedTable,    
  13.         m.`lock_mode` BlockedLockMode,  
  14.         m.`lock_type` BlockedLockType,  
  15.         m.`lock_index` BlockedLockIndex,  
  16.         m.`lock_space` BlockedLockSpace,  
  17.         m.lock_page BlockedLockPage,  
  18.         m.lock_rec BlockedLockRec,  
  19.         m.lock_data BlockedLockData,   
  20.         p.`HOST` blocking_host,   
  21.         p.`USER` blocking_user,  
  22.         b.trx_id BlockingTrxid,      
  23.         b.trx_mysql_thread_id BlockingThreadId,  
  24.         b.trx_query BlockingQuery,  
  25.         l.`lock_mode` BlockingLockMode,  
  26.         l.`lock_type` BlockingLockType,  
  27.         l.`lock_index` BlockingLockIndex,  
  28.         l.`lock_space` BlockingLockSpace,  
  29.         l.lock_page BlockingLockPage,  
  30.         l.lock_rec BlockingLockRec,  
  31.         l.lock_data BlockingLockData,           
  32.        IF (p.COMMAND = 'Sleep', CONCAT(p.TIME,' seconds'), 0) idel_in_trx               
  33.     FROM      
  34.         information_schema.INNODB_LOCK_WAITS w      
  35.     INNER JOIN information_schema.INNODB_TRX b ON b.trx_id = w.blocking_trx_id      
  36.     INNER JOIN information_schema.INNODB_TRX r ON r.trx_id = w.requesting_trx_id      
  37.     INNER JOIN information_schema.INNODB_LOCKS l ON w.blocking_lock_id = l.lock_id  AND l.`lock_trx_id`=b.`trx_id`  
  38.       INNER JOIN information_schema.INNODB_LOCKS m ON m.`lock_id`=w.`requested_lock_id` AND m.`lock_trx_id`=r.`trx_id`  
  39.     INNER JOIN information_schema. PROCESSLIST p ON p.ID = b.trx_mysql_thread_id     
  40.  INNER JOIN information_schema. PROCESSLIST p2 ON p2.ID = r.trx_mysql_thread_id   
  41.     ORDER BY      

  1.         WaitTime DESC \G;  

  1. SELECT      
  2.         p2.`HOST` 被阻塞方host,  
  3. p2.`USER` 被阻塞方用户,  
  4. r.trx_id 被阻塞方事务id,      
  5.         r.trx_mysql_thread_id 被阻塞方线程号,      
  6.         TIMESTAMPDIFF(      
  7.             SECOND,      
  8.             r.trx_wait_started,      
  9.             CURRENT_TIMESTAMP      
  10.         ) 等待时间,      
  11.         r.trx_query 被阻塞的查询,      
  12.         l.lock_table 阻塞方锁住的表,    
  13.         m.`lock_mode` 被阻塞方的锁模式,  
  14.         m.`lock_type`  "被阻塞方的锁类型(表锁还是行锁)",  
  15.         m.`lock_index` 被阻塞方锁住的索引,  
  16.         m.`lock_space` 被阻塞方锁对象的space_id,  
  17.         m.lock_page 被阻塞方事务锁定页的数量,  
  18.         m.lock_rec 被阻塞方事务锁定行的数量,  
  19.         m.lock_data  被阻塞方事务锁定记录的主键值,    
  20.         p.`HOST` 阻塞方主机,  
  21.         p.`USER` 阻塞方用户,  
  22.         b.trx_id 阻塞方事务id,      
  23.         b.trx_mysql_thread_id 阻塞方线程号,   
  24.         b.trx_query 阻塞方查询,   
  25.         l.`lock_mode` 阻塞方的锁模式,  
  26.         l.`lock_type` "阻塞方的锁类型(表锁还是行锁)",  
  27.         l.`lock_index` 阻塞方锁住的索引,  
  28.         l.`lock_space` 阻塞方锁对象的space_id,  
  29.         l.lock_page 阻塞方事务锁定页的数量,  
  30.         l.lock_rec 阻塞方事务锁定行的数量,  
  31.         l.lock_data 阻塞方事务锁定记录的主键值,           
  32.       IF (p.COMMAND = 'Sleep', CONCAT(p.TIME,' 秒'), 0) 阻塞方事务空闲的时间             
  33.     FROM      
  34.         information_schema.INNODB_LOCK_WAITS w      
  35.     INNER JOIN information_schema.INNODB_TRX b ON b.trx_id = w.blocking_trx_id      
  36.     INNER JOIN information_schema.INNODB_TRX r ON r.trx_id = w.requesting_trx_id      
  37.     INNER JOIN information_schema.INNODB_LOCKS l ON w.blocking_lock_id = l.lock_id  AND l.`lock_trx_id`=b.`trx_id`  
  38.       INNER JOIN information_schema.INNODB_LOCKS m ON m.`lock_id`=w.`requested_lock_id` AND m.`lock_trx_id`=r.`trx_id`  
  39.     INNER JOIN information_schema. PROCESSLIST p ON p.ID = b.trx_mysql_thread_id     
  40.  INNER JOIN information_schema. PROCESSLIST p2 ON p2.ID = r.trx_mysql_thread_id   
  41.     ORDER BY      
  42.         等待时间 DESC \G;  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值