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。

相关推荐
黎明丶之前3 分钟前
Spring Cloud Gateway 升级与 Bucket4j 限流实践
java·spring cloud
野犬寒鸦7 分钟前
MySQL复习记录Day01
数据库·后端
程序员木圭8 分钟前
05-告别逻辑混乱!Java 流程控制让代码学会"判断和循环"
java·后端
ward RINL12 分钟前
Spring boot启动原理及相关组件
数据库·spring boot·后端
yaaakaaang12 分钟前
三、抽象工厂模式
java·抽象工厂模式
kongba00713 分钟前
复刻 Claude Code 项目御马术缰绳系统 harness engineering 落地蓝图
java·linux·服务器
tERS ERTS15 分钟前
Spring Cloud gateway 路由规则
java
ZUNr115 分钟前
手写一个迷你版 @Column:注解到底是怎么工作的?
java
Treh UNFO20 分钟前
MySQL中的通配符
java
AI茶水间管理员20 分钟前
线程池核心线程数设为 0 会怎样?(附源码解析)
java·后端·面试