MySQL第二天早上第一次连接超时报错,解决方法

MySQL第二天早上第一次连接超时报错,解决方法

 

部署项目的时候,一开始程序运行正常,可是到第二天,就莫名其妙服务器挂掉,还抛出com.mysql.jdbc.exceptions.jdbc4.CommunicationsException异常

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

 

 

工具/原料

  • mysql,mysql客户端软件

方法/步骤

  1. 查看wait_timeout的默认值,如下SQL,其默认值为28800,也就是8小时

    mysql> show global variables like 'wait_timeout'; 

    MySQL第二天早上第一次连接超时报错,解决方法

  2. 修改SQL如下,设置为最大

    mysql> set global wait_timeout=604800; 

    MySQL第二天早上第一次连接超时报错,解决方法