首页 > 数据库 >记一次生产数据库连接超时问题排查

记一次生产数据库连接超时问题排查

时间:2023-11-03 14:45:44浏览次数:33  
标签:数据库 问题 排查 参数 超时 连接池

背景

Spring Boot 2.0.8 + Hikari + Oracle 

历史项目,很久没维护了,生产上正常运行两年有余,双活架构,突然有一天其中一台后端服务器数据库连接池报错:

SQL Error:0,SQLState:08006

SQL Error:17002,SQLState:08006

JDBCConnectionException:Unable to acquire JDBC Connection

初步排查

初步认为是连接池超时时间,或者某个参数出问题了,由于生产业务量增加,导致一直获取不到数据库连接导致超时了

有一点疑惑的是,hikari默认max-lifetime应该是1800000(30分钟),但后台日志中除了这个数字,还有9000000ms

第一次在修改最大连接池数量(maximum-pool-size)与探活周期(keepalive-time)等参数后重新部署,但是正常了一天后,又再次报错了

其中另一点疑惑是,另一台服务器上的应用一直是正常运行的

问题定位

在一次次修改参数,优化代码后,问题依然存在,考虑到可能不是应用端出现的问题,排查数据库侧的超时时间等参数,也均属于正常范围

后续在询问运维老师后了解到,应用到数据库之间存在防火墙,网络虽然通,但是并没有开通长链接,在申请开通长链接后,问题暂时解决(需要继续观察)

 

标签:数据库,问题,排查,参数,超时,连接池
From: https://www.cnblogs.com/sefuture/p/17807553.html

相关文章

  • SQLite数据库实现数据增删改查
    当前文章介绍的设计的主要功能是利用SQLite数据库实现宠物投喂器上传数据的存储,并且支持数据的增删改查操作。其中,宠物投喂器上传的数据包括投喂间隔时间、水温、剩余重量等参数。实现功能:创建SQLite数据库表,用于存储宠物投喂器上传的数据。实现对数据库表中数据的插入操作,即将......
  • 在 Oracle 数据库中,哪些操作会导致索引失效?
    索引失效的七字口诀:模型数空运最快,字面意思就是运送一个模型,要用飞机空运,不要用陆运和海运,数空运最快。口诀中的每一个字都代表一种索引失效的类型。我逐个讲解一下。1.模:代表模糊查询。like的模糊查询以%开头,索引失效。2.型:代表数据类型。类型错误,如字段类型为varchar,wher......
  • 【Mquant】4:量化投研之配置本地数据库
    量化投研配置本地数据库是量化投资领域中非常重要的一环。通过搭建本地数据库,可以方便地存储和管理股票市场的日频数据,为后续的因子计算和策略研究提供支持。1.数据库搭建首先我们抛出一个问题:真的需要数据库吗?前段时间跑了一个回测代码(这里用的是mysql):用海龟策略跑2011年到......
  • PostgreSQL技术大讲堂 - 第32讲:数据库参数调整
     PostgreSQL从小白到专家,是从入门逐渐能力提升的一个系列教程,内容包括对PG基础的认知、包括安装使用、包括角色权限、包括维护管理、、等内容,希望对热爱PG、学习PG的同学们有帮助,欢迎持续关注CUUGPG技术大讲堂。 第32讲:数据库参数调整 第32讲:11月04日(周六)19:30-20:30,......
  • MySQL 数据库 cpu 飙升的话,要怎么处理?
    排查过程:(1)使用top命令观察,确定是mysqld导致还是其他原因。(2)如果是mysqld导致的,showprocesslist,查看session情况,确定是不是有消耗资源的sql在运行。(3)找出消耗高的sql,看看执行计划是否准确,索引是否缺失,数据量是否太大。处理:(1)kill掉这些线程(同时观察cpu使用率是......
  • kubenetes 报错排查
    1.报code=Unknowndesc=failedtogetsandboxip:checknetworknamespaceclosed:removenetns:unlinkat/var/run/netns/cni-2502ee8a-9f06-2a44-66c6-59e2a7a277f9:deviceorresourcebusy解决方案:seecode=Unknowndesc=failedtogetsandboxip:chec......
  • 无涯教程-H2数据库 - JDBC连接
    H2是一个JAVA数据库,无涯教程可以使用JDBC与该数据库进行交互,在本章中,无涯教程将看到与H2数据库创建JDBC连接以及如何与H2数据库创建CRUD操作。通常,创建JDBC连接有五个步骤。第1步-注册JDBC数据库驱动程序。Class.forName("org.h2.Driver");第2步-打开连接。Connection......
  • 无涯教程-H2数据库 - Rollback语句
    ROLLBACK用于将事务回滚到Savepoint或上一个事务,通过使用此命令,无涯教程可以回滚到特定的保存点,也可以回滚到先前执行的事务。Rollback-语法ROLLBACK命令有两种不同的语法。以下是rollback命令的通用语法。ROLLBACK[TOSAVEPOINTsavepointName]以下是回滚命令对特定......
  • 数据库
    主键约束主键--就是数据表中记录的唯一标识,在一张表中只能有一个主键(主键可以是一个列,也可以是多个列的组合)当一个字段声明为主键之后,添加数据时:。此字段数据不能为null。此字段数据不能重复创建表时添加主键约束createtablebooks(book_isbnchar(4)primarykey,book_namev......
  • Zabbix6.0监控MySQL数据库
    官方文档:https://www.zabbix.com/cn/integrations/mysql部署过程:1.在MySQL数据库中创建监控账号并授权CREATEUSER'zabbix'@'%'IDENTIFIEDBY'Likun@123';GRANTUSAGE,REPLICATIONCLIENT,PROCESS,SHOWDATABASES,SHOWVIEWON*.*TO'zabbix'@�......