MySQL连接超时自动断开连接问题

原创
2016-06-07 15:07:55 835浏览

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 描述: 用mybatis2.3.5实现做应用时,程序中报以下错误: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: The last packet successfully received from the server was 79,221,885 milli

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入

  描述:

  用mybatis2.3.5实现做应用时,程序中报以下错误:

  com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:

  The last packet successfully received from the server was 79,221,885 milliseconds ago.

  The last packet sent successfully to the server was 79,221,885 milliseconds ago.

  is longer than the server configured value of 'wait_timeout'.

  You should consider either expiring and/or testing connection validity before use in your application,

  increasing the server configured values for client timeouts, or using the Connector/J connection property 'autoReconnect=true' to avoid this problem.

  解释及解决办法:

  如果连接闲置8小时 (mysql的wait_timeout参数默认时间), mysql就会自动断开连接, 得刷新应用才行.

  不用hibernate的话, connection url加参数:

  autoReconnect=true

  用hibernate的话, 加如下属性:

  true

  true

  true

  要是还用c3p0连接池:

  1

  0

  0

  true

  例:

  jdbc.url=jdbc:mysql://localhost:3306/yht_wxt?zeroDateTimeBehavior=convertToNull&useUnicode=True&characterEncoding=utf8&autoReconnect=true&autoReconnectForPools=true

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。