http://zeusami.iteye.com/blog/1112827

MySQL第二天早上第一次连接超时报错,解决方法com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure Last packet sent to the server was 0 ms ago

最近碰到一个mysql5数据库的问题。就是一个标准的servlet/tomcat网络应用,后台使用mysql数据库。问题是待机一晚上后,第二天早上第一次登录总是失败。察看日志发现如下错误:

“com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

Last packet sent to the server was 0 ms ago.”

经过一番调研,发现很多人都碰到过类似问题,但网上令人满意的回答并不多。mysql网站上的提问也很多,但并没有正确答案;百度知道上倒是有一个近似正确的回答。现将本人的解决办法总结一下:

上述问题是由mysql5数据库的配置引起的。mysql5将其连接的等待时间(wait_timeout)缺省为8小时。在其客户程序中可以这样来查看其值:

mysql﹥

mysql﹥ show global variables like 'wait_timeout';

+---------------+---------+

| Variable_name | Value |

+---------------+---------+

| wait_timeout | 28800 |

+---------------+---------+

1 row in set (0.00 sec)

28800 seconds,也就是8小时。

如果在wait_timeout秒期间内,数据库连接(java.sql.Connection)一直处于等待状态,mysql5就将该连接关闭。这时,你的Java应用的连接池仍然合法地持有该连接的引用。当用该连接来进行数据库操作时,就碰到上述错误。这解释了为什么我的程序第二天不能登录 的问题。

你可能会想到在tomcat的数据源配置中有没有办法解决?的确,在jdbc连接url的配置中,你可以附上“autoReconnect=true”,但这仅对mysql5以前的版本起作用。增加“validation query”似乎也无济于事。

本人觉得最简单的办法,就是对症下药:既然问题是由mysql5的全局变量wait_timeout的缺省值太小引起的,我们将其改大就好了。

查看mysql5的手册,发现对wait_timeout的最大值分别是24天/365天(windows/linux)。以windows为 例,假设我们要将其设为21天,我们只要修改mysql5的配置文件“my.ini”(mysql5 installation dir),增加一行:wait_timeout=1814400

需要重新启动mysql5。

linux系统配置文件:/etc/my.cnf

测试显示问题解决了。

也可以直接设置

mysql修改wait_timeout

mysql mysql> show global variables like 'wait_timeout';

其默认值为8小时

mysql的一个connection空闲时间超过8小时,mysql会自动断开该连接。

1.修改配置

vi /etc/my.cnf

[mysqld] wait_timeout=10

# /etc/init.d/mysql restart

2.直接用sql命令行修改 mysql> set global wait_timeout=604800;

除了wait_timeout,还有一个'interactive_timeout'

同样可以执行SHOW GLOBAL VARIABLES LIKE 'interactive_timeout'来查询

执行set global interactive_timeout=604800;来设置

mysql第二天无法连接_MySQL第二天早上第一次连接超时报错,解决方法com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:...相关推荐

  1. Mysql学习总结(62)——MySQL连接com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link问题

    数据库出现如下连接问题 com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure The ...

  2. com.mysql.jdbc.exceptions.jdbc4.CommunicationsException

    新建的网站出现如下错误: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: The last packet successfully r ...

  3. 问题记录——com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure...

    最近在搞一个Spring boot + Mybatis + Mysql的项目,用Mybatis访问数据库时,报了如下的错误,先在网上搜索了,试了各种办法都不行, 奇葩的是,连接另外1个数据库又没问题. ...

  4. Cause com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:Communications link failure 问题解决 报错

    Cause: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure 问题解决 Cau ...

  5. com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure 数据库报错

    -- 查询mysql 数据库链接空闲时间持有最大空闲时间,单位为秒 SHOW VARIABLES WHERE VAriable_name = 'interactive_timeout'; -- 会出现 ...

  6. com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

    昨天数据库做了一些改动,早上再打开的项目的时候就出现了这样的问题 com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communicat ...

  7. mysql的分页怎么不对_mysql一对多关联查询分页错误问题的解决方法

    xml问价中查询数据中包含list,需要使用collection .... .... 这样的查询系统封装的通用分页查询是不对的,所以需要自己sql中加入分页解决 SELECT you.nick_nam ...

  8. 解决com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link

    一.可能导致这样的原因 1.配置文件中的url不正确(排除) <url>jdbc:mysql://localhost:3306/env</url> 2.mysql的连接等待时间 ...

  9. mysql连接com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link

    jdbc驱动:mysql-connector-java-5.1.39-bin.jar 这个有问题, 换成:mysql-connector-java-5.1.34.jar 就可以了 转载于:https: ...

最新文章

  1. fedora mysql默认密码忘记_Linux fedora 24 忘记密码图形化界面修改root密码的方法
  2. win10安装ensp启动40_acer e5-475g笔记本如何安装win10系统【图文教程】
  3. Windows CE授权费用
  4. 一位大神的Python数据分析与可视化笔记
  5. Visual Stdio的解决方案资源管理器位置调整
  6. python中o_Python O
  7. 今天和朋友去参观一家做电商创业公司
  8. python判断用户名是否有效_Python校验用户名是否合法示例
  9. 动态修改php的配置项
  10. 为什么电脑屏幕会横过来_笔记本电脑屏幕横过来了怎么办?笔记本电脑屏幕倒过来了恢复方法...
  11. 幸运抽奖系统带后台源码
  12. 通过MVC与MVP的对比,简述单一职责原则
  13. 智能营销获客引流-入门-宁波慧客科技有限公司
  14. 8月24日科技联播:特斯拉回应苹果“疯狂挖人”,对方比我们有钱100倍
  15. 移动应用开发 Android Studio安装教程
  16. 解决服务器网卡不识别问题
  17. 作为职场过来人,推荐10个可以提高工作效率的办公软件
  18. 开环直流电机的机械特性_直流电机调速开环控制.docx
  19. 蓝牙基带数据传输机理分析
  20. 1.金融市场,资产管理与投资基金

热门文章

  1. python字符串对象所有基本方法简要
  2. Arm Cortex-M 处理器比较表
  3. 真正解决办法:WINDOWS7/WIN7提示错误:无法启动此程序,因为计算机中丢失D3DCOMPILER_47.dll。尝试重新安装该程序以解决此问题
  4. 文件服务器恢复测试,基于文件传输中文件损坏检测和恢复办法.doc
  5. 国外自由职业者网站_6个适合自由职业者的最佳众包网站
  6. 2021年施工员-设备方向-通用基础(施工员)试题及解析及施工员-设备方向-通用基础(施工员)模拟试题
  7. 金丝桃诗词精选四首 菲菲红紫送春去,独自黄葩夏日闲
  8. 网间数据摆渡如何轻松实现数据安全交换
  9. Nervos 双周报第 4 期:经济白皮书的发件小哥正在路上
  10. 一元二次不等式和一元三次不等式解法的思考