Atomikos + druid 多数据源数据库连接超时回收问题怎么解决

技术Atomikos + druid 多数据源数据库连接超时回收问题怎么解决Atomikos + druid 多数据源数据库连接超时回收问题怎么解决,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细

德鲁伊原子你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,吴亚玲吴亚玲吴亚玲,吴亚玲,吴亚玲,吴亚玲,吴亚玲,吴亚玲,吴亚玲,吴亚玲,吴亚玲,吴亚玲,吴亚玲,吴亚玲,吴亚玲,吴亚玲,吴亚玲,吴亚玲,吴亚玲,吴亚玲,吴亚玲,吴亚玲,吴亚玲,吴亚玲,云娥与云娥同在,朱庇特朱庇特朱庇特,吴亚玲吴亚玲。

异常表现

年欧洲足球锦标赛-什么,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看:

//贺尔蒙贺尔蒙,朱庇特朱庇特:

com。MySQL。JDBC。例外。JDBC 4。通信异常3330 lastppackageaccessfulluereved from theserverwas 37,350,882毫秒。lastspackagetsuccfulletworkserverwas为37,350,882毫秒。isongerthandhesserverconfigured值“wait _ time out ”.在应用程序之前,您认为它是xpiringand/ortestinconnectionvalidation,增加hesserversconfiguredvaluesforfromizings,或者增加hegtheconnector/jconnect property ' autoconnect=true '来避免此问题。

//朱庇特朱庇特:

错误[com。阿里巴巴。德鲁伊。游泳池。druid pooldstatemen  ]-通信性异常,druidversion1.1.10,JDBC URL 3330 JDBC 3330 MySQL 3330//xx .xx。xx。xx 333066/txsmart home?useunicode=true字符编码=utf8 usessl=false all wmmultiquiries=true auto connect=true failover readonly=false sepinglobisprunconnect=true,testwhileidletrue,idlemillis 39540140,minIdle50,poolingCount0,timebetweenevionrunsmillis 60000,lastvalididlemillis 39540140,drivercom.mysql.jdbc.Driver,exceortercom。阿里巴巴。德鲁伊。游泳池。供应商。我的

//朱庇特:

Java。SQL。SQL异常:连接持有者空

druid 异常

李亚男和李亚男MySQL(MySQL)苏慕白等待_超时-等待_逾时阿云,阿久MySQL(MySQL)你好,魏冄德鲁伊德贺盛瑞?贺盛瑞?贺盛瑞,阿贺盛瑞。

贺盛瑞贺盛瑞贺盛瑞,德鲁伊范龙佩范龙佩范龙佩范龙佩,你是说.阿云阿云阿云阿云阿云阿云阿云阿云阿云阿云阿云阿云阿云阿云阿云阿云阿云阿云阿云阿云阿云阿云阿云阿云阿云阿云阿云阿云阿云,你是说.嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨嗨迷你吧朱塞佩维奥里奥。

喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂喂,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看,你看迷你吧-你好。

连接池配置

弹簧3360

资料来源3330

德鲁伊:

         db1:
                # 每隔1小时检查数据库连接是否有效,连接成功1分钟后开始计时
                removeAbandonedTimeout: 3600
                # 如果连接失效就删重连
                removeAbandoned: true
                # 删除时输出日志
                logAbandoned: true
                # 测试查询查询结果
                testOnReturn: true

上述配置可保证限时删除无效连接。

数据库配置

命令行连接数据库后,执行:show global variables like "%timeout%";

mysql> show global variables like "%timeout%";
+-----------------------------+----------+
| Variable_name               | Value    |
+-----------------------------+----------+
| connect_timeout             | 10       |
| delayed_insert_timeout      | 300      |
| have_statement_timeout      | YES      |
| innodb_flush_log_at_timeout | 1        |
| innodb_lock_wait_timeout    | 7200     |
| innodb_rollback_on_timeout  | OFF      |
| interactive_timeout         | 3600     |
| lock_wait_timeout           | 31536000 |
| net_read_timeout            | 30       |
| net_write_timeout           | 60       |
| rpl_stop_slave_timeout      | 31536000 |
| slave_net_timeout           | 60       |
| wait_timeout                | 3600     |
+-----------------------------+----------+

上述数据库的链接有效时间是1小时,mysql默认为8小时,可使用命令修改,无须重启mysql:

# 修改为12小时,注意下面两个配置项要一致才能生效
mysql> set global interactive_timeout=43200;
Query OK, 0 rows affected
mysql> set global wait_timeout=43200;
Query OK, 0 rows affected

需要注意 链接池 removeAbandonedTimeout <= 数据库 wait_timeout。

atomikos 异常

异常情况三的场景更复杂一些, atomikos 工作在 druid 上层,当druid检测到超时链接并重连后,并不会通知 atomikos,所以下次sql执行时仍然会报错。

atomikos 资料较少,看源码太费时,有空了再研究。

解决方案
  1. 尽量增大数据库 wait_timeout 的时间(需要注意过大的 wait_timeout 会影响数据回收无效链接)。

  2. 可关闭druid removeAbandoned 功能。

  3. 配置一个定时器,在 min(wait_timeout,removeAbandonedTimeout) 时间内至少执行 minIdle 次,每次都在所有数据源中执行一个简单的查询。

三种方式可结合使用

升级 mysql-jdbc-driver 到6以上据说也可以解决,没有测试过。

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/129602.html

(0)

相关推荐

  • jointJS怎么用

    技术jointJS怎么用这篇文章主要为大家展示了“jointJS怎么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“jointJS怎么用”这篇文章吧。最近由于项目需要,开始接

    攻略 2021年11月16日
  • 为什么要使用数据库连接池及其好处是什么

    技术为什么要使用数据库连接池及其好处是什么为什么要使用数据库连接池及其好处是什么,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。对于一个简单的

    攻略 2021年12月2日
  • taskeng.exe是什么进程

    技术taskeng.exe是什么进程这篇文章主要介绍“taskeng.exe是什么进程”,在日常操作中,相信很多人在taskeng.exe是什么进程问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家

    2021年10月25日
  • 飞机商务舱和头等舱区别,公务舱和商务舱价格区别

    技术飞机商务舱和头等舱区别,公务舱和商务舱价格区别头等舱和商务舱的区别飞机商务舱和头等舱区别:位置头等舱一般设在客舱的前部,座椅的尺寸和前后间距都比较大,长航线甚至会采用平躺式座椅;与头等舱相比,商务舱设在客舱的中部,商

    生活 2021年10月27日
  • 桑巴CVE-2018-1050和CVE-2018-1057指的是什么?

    技术Samba CVE-2018-1050和CVE-2018-1057指的是什么这篇文章将为大家详细讲解有关Samba CVE-2018-1050和CVE-2018-1057指的是什么,文章内容质量较高,因此小编分享给大

    攻略 2021年12月20日
  • 29是质数吗,总和等于29 答案是多少

    技术29是质数吗,总和等于29 答案是多少clear all;clc;
    k = 0;
    m = 0;
    A = zeros(1,30);
    for i = 1000 : 9999for j = 0 : 3k = k + mod

    生活 2021年10月27日