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; 杀掉死锁的事务线程重新启动项目。