踩坑日记(一):半夜打DBA电话解决数据库连接超时自动回滚问题

这篇博客记录了一次解决数据库连接超时自动回滚问题的过程。作者分析了报错日志,检查了数据库连接池设置,排查了业务SQL和底层报错日志,甚至在MySQL Bug网站寻找线索。最终,通过DBA发现数据库的超时时间设置过短,调整后问题得到解决。博客强调了业务设计的改进需求,并分享了踩坑经验。
摘要由CSDN通过智能技术生成

点击上方“IT实战联盟”,关注“公*众*号”

领导要高高在上

平时多听听他人的意见

然后认真记下来到底是谁对你有意见

背景

很少用的一个业务后台管理端需要导入一批数据(200多条),用户在导入的时候没有成功。业务场景比较复杂,需要将每条数据去数据库匹配、关联、分析后再将结果进行更新。大约涉及5张表、3000多万笔数据。

报错日志分析

踩坑日记(一):半夜打DBA电话解决数据库连接超时自动回滚问题

从报错日志上来看,主要是由于连接时间过长,导致连接失效。那么那失效的连接去请求数据库就会报上图的异常。

排查步骤

第一步:检查数据库连接池设置的超时时间

首先想到的是项目中配置的数据库连接池超时时间设置小了,具体配置如下:

spring.datasource.max-wait: 120000

那就“豪放”一点加个 0 ,测试发现依然报错。

第二步:分析报错数据

连接池的超时时间没有问题那就分析一下具体的报错数据,是否由于数据原因导致。修改日志级别(由于该功能一直在正常使用,日志级别是debug),将报错数据进行输出。排除因导入文

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值