MySQL 死锁查询和解决死锁

来了来了来了!客户现场又要骂街了,你们这是什么破系统怎么这么慢啊?!?!

今天遇到了mysql死锁,直接导致服务器CPU被PUA直接GUA了!

别的先别管,先看哪里死锁,或者哪里阻塞了。。。一定一定一定要先恢复现场使用,不然你会知道花儿为什么这样的红...

恢复使用后我们继续悠闲地排查吧。

1.查询是否锁表(肯定锁了一堆)

sql 复制代码
show OPEN TABLES where In_use > 0;

2.查询进程(绷不住了)

sql 复制代码
show processlist;

3.杀死进程id(上面命令所查数据的id)(-_-||一条一条杀吗?不不不!!这种情况直接重启服务器吧)

sql 复制代码
kill id

4.查看正在锁的事务(几乎用不到)

sql 复制代码
SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS;

5.查看等待锁的事务(反正我没用)

sql 复制代码
SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCK_WAITS;

6.查看锁的类型和状态(看我都不看)

sql 复制代码
show status like '%lock%';

再查询进程的时候info字段是相关的sql语句,最后把这个sql重写了才解决!这sql是谁是谁是谁写的我敲xxxxxxx。

相关推荐
李白的天不白21 分钟前
使用 SmartAdmin 进行前后端开发
java·前端
swordbob28 分钟前
Spring 单例 Bean 是线程安全的吗?
java·开发语言
吴声子夜歌1 小时前
SQL经典实例——使用多张表
数据库·sql
2601_951643771 小时前
Python第一,Java跌出前三,C语言杀回来了
java·c语言·python·编程语言排行·技术趋势
倔强的石头_2 小时前
《Kingbase护城河》——深度解密数据库行锁冲突与等待事件架构
数据库
IT策士2 小时前
Redis 从入门到精通:性能调优与多语言客户端对比
数据库·redis·缓存
Bert.Cai3 小时前
Oracle INSTR函数详解
数据库·oracle
IT 行者3 小时前
GitHub Spec Kit 实战(五):/speckit.tasks 怎么拆——Spec Kit 五部曲收官
java·ai编程·claude
(Charon)3 小时前
【C++ 面试高频基础:指针、引用、const、static、new/delete 总结】
java·开发语言
Yeats_Liao4 小时前
Feed流系统设计(三):数据模型与存储设计,从表结构到Redis收件箱
java·javascript·redis