ITPub博客

首页 > 数据库 > 国内数据库 > 【YashanDB 知识库】druid 连接池做断网测试,无法自动重新连接

【YashanDB 知识库】druid 连接池做断网测试,无法自动重新连接

原创 国内数据库 作者:崖山数据库系统YashanDB 时间:2025-01-13 18:09:48 0 删除 编辑

本文内容来自 YashanDB 官网,原文内容请见  https:///newsinfo/7919216.html?templateId=1718516

**【标题】**druid 连接池断网测试,崖山数据库无法自动重新连接

**【问题分类】** 驱动使用

**【关键字】**druid,socket timeout

**【问题描述】** 使用崖山数据库 23.2.7.100 进行适配过程中反馈崖山数据库不能自动重连

**【问题原因分析】** 模拟的断网测试,报错如下,

output (1)

初步分析,怀疑是没有配置 socket timeout 等参数和默认查询语句没有修改,会话保留时间过短,容易报错。

建议客户配置如下:

将默认查询:select 1; 修改成:select 1 from dual;

jdbc: yasdb://xx.xx.xx.xx:1688/test?productName=mysql&useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=UTC&socketTimeout=120&allowPublicKeyRetrieval=true

依然没有效果,还是报错一样的信息。继续查看相关配置信息:

output (2)

从默认配置看,testOnBorrow 设置为 false,testWhileIdle 设置为 true, 闲置时间大于 timeBetweenEvictionRunsMillis 即可重连,即断网 60s 之后,才会被动去重连,如果在 60s 之类,是会有报错,还没触发重连

分析到这, 配置主动检测,将 test-on-borrow 配置成 True  test-While-Idle 设置为 false,问题解决

output (3)

【解决 / 规避方法】配置主动检测,将 test-on-borrow 配置成 True  test-While-Idle 设置为 false

**【影响范围】**23.2.7.100

【修复版本】-


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70028812/viewspace-3063834/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
崖山数据库系统YashanDB是深圳计算科学研究院完全自主研发设计的新型数据库系统,融入原创理论,支持单机/主备、共享集群、分布式等多种部署方式,覆盖OLTP/HTAP/OLAP交易和分析混合负载场景,为客户提供一站式的企业级融合数据管理解决方案。

注册时间:2023-04-11

  • 博文量
    722
  • 访问量
    639898