Lock wait说明出现了锁问题

1.Lock wait说明出现了锁问题

使用 SELECT * FROM INFORMATION_SCHEMA.INNODB_TRX;

查看当前事务,使用SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS;

查看当前锁定的事务,使用SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCK_WAITS;

查看当前等锁的事务。使用以上三个sql基本能定位到代码所在位置。

http://www.mamicode.com/info-detail-2845763.html

2.解决方法

应急方法:show full processlist; kill掉出现问题的进程。 ps.有的时候通过processlist是看不出哪里有锁等待的,当两个事务都在commit阶段是无法体现在processlist上
根治方法:select * from innodb_trx;查看有是哪些事务占据了表资源。 ps.通过这个办法就需要对innodb有一些了解才好处理

https://ningyu1.github.io/site/post/75-mysql-lock-wait-timeout-exceeded/

posted @   littlevigra  阅读(1810)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App
历史上的今天:
2018-11-13 kubespray 容器存储设备 -- rook ceph
2017-11-13 在root 用户去执行其他用户的脚本
2017-11-13 pstack 故障排除思路
点击右上角即可分享
微信分享提示