MySQL锁 - Lock wait timeout exceeded

引用地址:https://www.cnblogs.com/zsrecord/p/11858602.html

 

问题描述:

执行insert或者update,delete,报错:Error Code: 1205. Lock wait timeout exceeded; try restarting transaction

解决方案:

# 1. 查看事务表

select * from information_schema.innodb_trx

在结果中发现trx_mysql_thread_id 有值 xxxx (数字)

 

# 2. 运行 -- 结果中会有一条与xxxx(数字)对映的数据

show processlist

# 3. 在sql中执行

kill xxxx

原因分析:

mysql的innoDB存储引擎是支持事务的,事务开启后没有被主动commit。导致该资源被长期占用,其他事务在抢占该资源时,因上一个事务的锁而导致抢占失败!因此出现Lock wait timeout exceeded 

posted @ 2021-12-06 17:15  10132714  阅读(162)  评论(0编辑  收藏  举报