使用客户端操作数据库时,返回错误:
SQL 错误 [1205] [40001]: Lock wait timeout exceeded; try restarting transaction
Lock wait timeout exceeded; try restarting transaction
这是因为有一些事务没有完成提交,导致表被锁定,当前运行的操作等待事件过长。
解决办法:
使用root用户登录,执行查询语句:
SELECT * FROM information_schema.INNODB_TRX
找到这一列:
trx_mysql_thread_id
如果有未执行完成的事务,这里会有线程的ID,然后执行查询语句:
kill 1983
把里面的数字换成查询出来的数字。
如果有多个,把所有的线程都kill掉就可以了。