mysql事物sql语句死锁,定时任务启动失败Lock wait timeout exceeded;try restarting transaction

  把定时任务quartz配置mysql里多台机器启动时可能会出现数据库死锁,然后控制台报错:

Lock wait timeout exceeded;try restarting transaction

  项目启动失败,这时候只需要去mysql中查两个语句,然后杀掉对应的死锁线程就行:

1. 查询mysql所有正在执行的sql,看到query就说明是正在执行的,有时候慢查询导致程序卡住无响应也可以这么查杀
show processlist;
kill id;
2. 查看mysql事物表INNODB_TRX,在information_schema库中
SELECT * FROM information_schema.innodb_trx ;
kill trx_mysql_thread_id;
杀掉死锁的事务线程重新启动项目。

 

posted @ 2020-02-13 14:52  长情白月光  阅读(275)  评论(0编辑  收藏  举报