首页 > MySQL > 当前页面

数据库死锁问题排查过程会遇到哪些问题?

2024-10-24 NEW个对象

数据库死锁问题排查过程会遇到哪些问题?

1、锁的是那个表

一般会有报警信息,根据报警信息可以获取到sql语句,然后根据sql获取锁的那张表。

2、查看表的索引的建立情况

因为在mysql里执行sql一般会锁住索引,常见的有:主键索引、组合索引

2、数据库的隔离级别

select @@tx_isolation

3、获取死锁日志

show engine innodb status

4、分析SQL的执行计划

通过explain关键词,分析SQL使用了哪些索引

5、在程序里找到执行sql代码

6、修改代码,死锁解决

*尽量不要在一个事务里使用多条SQL修改同一条数据。


造成死锁的原因有很多,不同的场景遇到的问题是不一样的,这里只是简单的梳理一下。

相关文章

  • 数据库死锁问题排查过程会遇到哪些问题?

    数据库死锁问题排查过程会遇到哪些问题? 1、锁的是那个表 一般会有报警信息,根据报警信息可以获取到sql语句,然后根据sql获取锁的那张表。

    NEW个对象 2024-10-24

  • MySQL核心知识体系(基于XMind整理版)

    MySQL作为典型的关系型数据库,其核心能力围绕“存储、索引、事务、锁、日志、复制”六大模块展开。 在高并发系统中,MySQL不仅是数据存储工具,更是整个业务系统稳定性的基石。

    NEW个对象 2026-06-08

  • SQL基础知识

    SQL基础知识

    NEW个对象 2025-01-13

NEW个对象 NEW个对象
JAVA是世界上最好的语言