1、事务未提交
在使用spring test 做单元测试时,debug导致事务没有提交,Lock wait timeout exceeded;
定位到该表,直接navicat 上insert 该表,Lock wait timeout exceeded;
确认是该表的事务没有提交,锁被占用没释放:
select * from information_schema.innodb_trx;
查看到堵塞的线程,kill  trx_mysql_thread_id,
2、表级锁被阻塞
同事在查询数据库数据写入到excel时,数据量较大有200万,未能正确分页,导致数据库锁等待卡死;
show processList;
查看到多个线程处于sending data的状态,
kill掉 线程,恢复数据库;
并将存储引擎由MyIsam 改为 INnnoDB,可减少表级锁。
发布评论

分享到:

IT虾米网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!

redis写磁盘出错Can’t save in background: fork: Cannot allocate memory详解
你是第一个吃螃蟹的人
发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。