MySQLTransactionRollbackException
前段时间发现项目启动过程特别慢,特别慢。经常等2-3分钟。偶尔还会报错。偶尔启动成功。报错异常信息MySQLTransactionRollbackException。上网百度才发现是操作过程中的进程未结束导致mysql死锁。
话不多说直接上解决办法。
1、查询是否锁表
show open tables where in_use>0;
2、查询进程
show processlist
查询到相对应的进程,然后 kill id
3、查看正在锁的事务
select * from information_schema.innodb_locks;
4、查看等待锁的事务
select * from information_schema.innodb_lock_waits;
mysql数据库输入sql查询锁表的进程
select * from information_schema.INNODB_TRX;
查询结果有对应的 进程ID thread_id
sql 输入 : kill trx_mysql_thread_id( 进程id ) 杀掉进程就ok了
注意杀掉的进程id是thread_id 不是trx_id !!