
MySQL锁表锁行分析
概述
有时候代码里出现锁表或者锁行的情况,想 kill 掉又找不到进程
一、看当前正在进行的事务
select * from information_schema.INNODB_TRX;
拿到 trx_mysql_thread_id
二、查进程
select * from information_schema.`PROCESSLIST` WHERE id = 上面找到的trx_mysql_thread_id
拿到进程 id
注意了:这里如果你看到进程的状态是 Sleep,说明这个连接内的 sql 已经执行完了,一直等待提交事务,所以你要看看你的业务代码,可能这个事务内的其他代码逻辑死循环了或者卡住了导致一直无法提交事务
三、结束进程
kill 进程id
本文是原创文章,采用 CC 4.0 BY-SA 协议,完整转载请注明来自 KK元空间
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果