数据库发生了死锁怎么办

devtools/2024/12/22 11:36:19/

当项目中存在公共的数据表,比如日志表,同时存在对这张表的读写操作,或者是对数据量较大的表加索引同时伴随其他并发操作,那么这张表就有较高概率发生死锁。

现象:对于这张表的任何操作都会被阻塞,项目出现大量的超时报错。

具体解决:

使用 SHOW PROCESSLIST;

命令的输出结果显示了有哪些线程在运行,可以帮助识别出有问题的查询语句,一般死锁的线程都会在查询结果的state字段中  又lock这个标记,如图所示

然后kill 进程号;来杀死死锁进程

SHOW PROCESSLIST;kill 369126;
kill 369129;
kill 369133;
kill 369139;
kill 369140;
kill 369141;
kill 369143;
kill 369145;
kill 369146;
kill 369152;

MySQL表死锁会导致无法查询这张表‌。当发生死锁时,MySQL会自动检测到死锁的存在,并根据事务的优先级自动进行回滚操作。这样一来,死锁事务中的查询语句会被终止执行,整个事务会被回滚到之前的状态‌。因此,死锁会导致无法查询这张表,直到死锁被解决。

死锁的检测和解决

  1. 检测死锁‌:可以通过查询进程列表来检测是否存在死锁。使用命令 SHOW PROCESSLIST; 可以查看当前所有进程的信息,找到可能导致死锁的进程‌。
  2. 解决死锁‌:一旦检测到死锁,可以通过杀死导致死锁的进程来解决问题。使用命令 KILL [进程ID]; 可以终止特定的进程,从而解除死锁‌。

预防死锁的策略

  1. 合理设计索引‌:确保索引的设计能够减少锁的竞争,避免不必要的全表扫描。
  2. 优化事务设计‌:尽量减少事务的持续时间,避免长时间持有锁。
  3. 使用锁超时设置‌:通过设置锁的超时时间,避免长时间等待锁的释放。
  4. 避免大事务‌:将大事务拆分成多个小事务,减少锁定资源的时间和范围‌。

http://www.ppmy.cn/devtools/144361.html

相关文章

redis常用数据类型介绍

Redis 是一种高性能的键值存储数据库,它支持多种数据类型,使得开发者能够灵活地存储和操作数据。 1. 字符串(String): • Redis 最基本的数据类型,可以存储任何形式的字符串,包括文本、数字等。…

UDP系统控制器_音量控制、电脑关机、文件打开、PPT演示、任务栏自动隐藏

UDP系统控制器(ShuiYX) 帮助文档 概述 本程序设计用于通过UDP协议接收指令来远程控制计算机的音量、执行特定命令和其他功能。为了确保程序正常工作,请确认防火墙和网络设置允许UDP通信,并且程序启动后会最小化到托盘图标。 命令格式及说明 音量控制…

抓包之使用wireshark抓http2的包

写在前面 本文看下使用wireshark如何抓http2的包。 1;正文 因为当前并非所有的网站都支持了http2协议,所以为了知道当前我们使用的网站是否支持http2,需要安装一个谷歌的插件http indicator,安装成功后会有一个小闪电的图标&am…

String.prototype.padStart() 方法来实现日不足两位时补充零

你可以使用 String.prototype.padStart() 方法来实现日不足两位时补充零,这样代码更简洁。padStart() 会在字符串的前面填充指定的字符,直到字符串达到给定的长度。对于你的需求,padStart(2, 0) 会将 day 补充成两位数(如果 day 是…

活动预告|云原生创新论坛:知乎携手 AutoMQ、OceanBase、快猫星云的实践分享

近年来,云原生技术迅猛发展,成为企业数字化转型的关键动力,云原生不仅极大地提升了系统的灵活性和可扩展性,还为企业带来了前所未有的创新机遇。 12 月 28 日 知乎携手 AutoMQ、OceanBase 和快猫星云推出“云原生创新论坛”主题的…

弹性裸金属服务器(神龙):助力企业腾飞的云计算“黑科技”

在云计算飞速发展的今天,企业对于计算资源的需求早已不再满足于简单的“够用”,而是追求极致的性能、灵活的伸缩和数据安全的保障。那么,问题来了:如何在性能与弹性之间取得完美的平衡? 答案就是——阿里云弹性裸金属…

vscode 设置和引用变量

https://code.visualstudio.com/docs/editor/variables-reference设置 方法1 : 作用域 : 一个会话中 "configurations": [{ // 这是一个lauch 会话"variables": {"programPath": "${workspaceFolder}/build/bin/as",//"testPath…

uni-app商品搜索页面

目录 一:功能概述 二:功能实现 一:功能概述 商品搜索页面,可以根据商品品牌,商品分类,商品价格等信息实现商品搜索和列表展示。 二:功能实现 1:商品搜索数据 <view class="search-map padding-main bg-base"> <view class…