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。

相关推荐
程序猿乐锅1 小时前
从0-1一文详解RabbitMQ
java·分布式·后端·中间件·rabbitmq·ruby
考虑考虑4 小时前
JDK26中的List.ofLazy()
java·后端·java ee
刘胡子大叔4 小时前
MySQL 升到 8.4 前的兼容性自检清单
mysql
小蒜学长4 小时前
基于SpringBoot的公寓报修管理系统的设计与实现(代码+数据库+LW)
java·spring boot·后端·公寓报修管理系统·多角色协同
IT古董4 小时前
《FDE前沿部署工程师实战教程》33 - Enterprise AI Observability:从Agent Trace到全链路智能运维
数据库·人工智能
for_ever_love__4 小时前
MySQL 主从复制讲透:binlog 原理、搭建步骤与读写分离
java·数据库·mysql·binlog·读写分离·原理·主从复制
小π军7 小时前
操作系统面试题
java·linux·服务器
倔强的石头1067 小时前
应用账号最小权限实践:读写账号、报表账号、运维账号分层
java·运维·开发语言
Shaoshing7 小时前
ThreadLocal
java·jvm·threadlocal