欢迎来到IDC91站长网!
解决服务器各种技术问题,加微信uecomzsr

MySQL

当前位置: IDC91 > 数据库 > MySQL

mysql死锁和分库分表问题详解

时间:2022-05-30 13:53:36|栏目:MySQL|点击:

记录生产mysql的问题点。

业务场景与问题描述

请求一个外部接口时,每天的请求量在900万左右。

分为请求项目和回执这两个项目。请求是用来调用外部接口,回执是接收发送的接口。

在发送请求前会先插入数据库。

在请求后,如果接口返回调用失败,会更新数据库状态为失败。

如果发送成功,则会等待上游给出回执消息后,然后更新数据库状态。

而在生产运行过程中,半年出现过两次mysql导致的mq消费者堆积的问题。

问题分析

记录两次不同的原因导致的生产问题及原因分析。

mysql死锁问题

查看mq聚合平台TPS
上生产发现mq数据一直堆积,且不断上升。而TPS仅为30左右,一直上不去。

这就会使mq消费变慢了,导致不断堆积。具体什么原因导致mq一直堆积,需要继续排查。

查看生产服务器日志

查看生产服务器日志,发现有报错dead Lock的错误。

error response from MySQLConnection [node=24, id=277499, threadId=2735941, state=borrowed, closed=false, autocommit=true, host=10.1.10.74, port=3306, database=sep_4, localPort=27744, isClose:false, toBeClose:false, MySQLVersion:5.7.25], err: Deadlock found when trying to get lock; try restarting transaction, code: 1213

上一篇:详解MySQL 用户权限管理

栏    目:MySQL

下一篇:MySQL命令行操作时的编码问题详解

本文标题:mysql死锁和分库分表问题详解

本文地址:https://idc91.com/shujuku/3756.html

广告投放 | 联系我们 | 免责申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

Copyright © 2023 IDC91.COM 版权所有晋ICP备17006296号