標籤:找出未提交的mysql線程/事務
找出未提交的MySQL線程/事務:
SELECT trx_id,trx_state,trx_started,trx_mysql_thread_id,CURRENT_TIMESTAMP - trx_started AS RUN_TIME from information_schema.innodb_trx;
650) this.width=650;" src="https://s4.51cto.com/wyfs02/M01/98/97/wKiom1k-aHjyByyCAAAqS0EfleQ076.png" title="1111.png" alt="wKiom1k-aHjyByyCAAAqS0EfleQ076.png" />
SELECT * from information_schema.processlist; 這個能看到上面哪個SQL線程ID(的378號線程就是造成MDL鎖的罪魁禍首)
650) this.width=650;" src="https://s4.51cto.com/wyfs02/M01/98/97/wKioL1k-aICjnYBBAABKE0Mu684038.png" title="2222.png" alt="wKioL1k-aICjnYBBAABKE0Mu684038.png" />
SELECT * from performance_schema.events_statements_current\G 可找出造成MDL阻塞的SQL還有對應的DATABASE(如果在串連數多的資料庫中,可能有點亂不太好找)
650) this.width=650;" src="https://s5.51cto.com/wyfs02/M02/98/97/wKiom1k-aJPiXI5ZAACcUxntyh8133.png" title="3333.png" alt="wKiom1k-aJPiXI5ZAACcUxntyh8133.png" />
然後 kill 掉378 線程即可。
本文出自 “菜雞” 部落格,請務必保留此出處http://lee90.blog.51cto.com/10414478/1934669
找出未提交的MySQL線程/事務