排查MySQL事務沒有提交導致 鎖等待 Lock wait timeout exceeded


解決思路:

  select * from information_schema.innodb_trx 之后找到了一個一直沒有提交的只讀事務,

  kill 到了對應的線程后ok 了。

 

轉載自:http://blog.sina.com.cn/s/blog_6bb63c9e0100s7cb.html

在Mysql5.5中,information_schema 庫中增加了三個關於鎖的表(MEMORY引擎);
  innodb_trx ## 當前運行的所有事務

  innodb_locks ## 當前出現的鎖

  innodb_lock_waits ## 鎖等待的對應關系

## 產生事務,在innodb_trx就有數據 ;
mysql> select * from information_schema.innodb_trx G;

如果沒有產生鎖等待,innodb_lock_waits 和innodb_locks 中沒有數據

如果產生所等待,查詢這三張表,找到對應線程,殺掉。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM