Lock wait timeout exceeded; try restarting transaction
不知是什么原因,在对MySQL数据库的某一个表进行更新时,出现了异常"Lock wait timeout exceeded; try restarting transaction"。原因是这个表被锁住了。
解决办法当然是给这个表解锁了:
1)查询当前运行的所有事务
select * from information_schema.innodb_trx
结果如图
图中红色语句 LOCK WAIT
为占用系统资源的语句,这条记录的id为199120823069, trx_mysql_thread_id
为 738178711
2)使用kill杀死线程
kill 738178711
执行后此被锁的表就已经解锁了,可进行正常的更新操作。