MySQL innodb waiting for table level lock 问题解决
2017-08-08 09:28
751 查看
场景
某客户告知数据库(MySQL5.6)发生锁,数据无法增删改,已严重影响业务。问题排查
登录数据库检查数据库状态如下table level lock???都是innodb存储引擎这种状态不该出现啊。会不会是人为加了锁?
果然。查看innodb的状态发现有一个事务持有大量的锁。
kill掉该事物,数据库状态正常。
通过时间戳推算得知在该时刻进行了一个逻辑备份,添加了add locks参数,未完成被KILL掉了,unlock未执行导致多表被锁。
模拟场景复现
复现倒是挺简单的,就是一个连接执行lock table xxx read,在对该表的增删改操作就变成了waiting table level lock。但是这个是MySQL-5.6的表现,MySQL5.7表现为Waiting for table metadata lock。看来Waiting for table metadata lock在5.7又多了一种场景!相关文章推荐
- MySQL innodb waiting for table level lock 问题解决
- MySQL出现Waiting for table metadata lock的原因以及解决方法
- MySQL出现Waiting for table metadata lock的原因以及解决方法
- MySQL出现Waiting for table metadata lock的原因以及解决方法
- MySQL出现Waiting for table metadata lock的原因以及解决方法
- MySQL出现Waiting for table metadata lock的原因以及解决方法
- mysql Waiting for table level lock
- MySQL出现Waiting for table metadata lock的原因以及解决方法
- MySQL出现Waiting for table metadata lock的原因以及解决方法
- MySQL出现Waiting for table metadata lock的原因以及解决方法
- 故障案例---innodb表出现大量的Waiting for table level lock
- 记一次MySQL中Waiting for table metadata lock的解决方法
- 记一次MySQL中Waiting for table metadata lock问题的处理
- Waiting for table metadata lock问题的解决
- MySQL出现Waiting for table metadata lock的原因以及解决方法
- MySQL出现Waiting for table metadata lock的原因以及解决方法
- MySQL drop空表时处于Waiting for table metadata lock状态,解决办法
- MySQL出现Waiting for table metadata lock的场景浅析
- MySQL5.6.12 Waiting for commit lock导致从库hang住的问题剖析
- MySQL出现Waiting for table metadata lock的场景浅析