MySQL的8小时断开连接问题

给领导写好的web网站发布后,第2天早上就出现无法查询到数据的情况。

在Tomcat的log里查到了JDBC begin transaction和Software caused connection abort: socket write error等问题。应该是和数据库连接的问题,但是程序并没有什么问题,应该是配置上的。()

通过搜索引擎查了好一会,有解决方案是对mysql设置autoReconnect。有以下2种方式

1.在连接数据库的url中添加即可。

<property name="url" value="jdbc:mysql://localhost:3306/zcgl?autoReconnect=true" />

2.hibernate中可以配置

<prop key="connection.autoReconnect">true</prop>
<prop key="connection.autoReconnectForPools">true</prop>
<prop key="connection.is-connection-validation-required">true</prop>

出现这种问题的原因是在使用mysql的时候,如果超过8小时数据库没有操作,会自动断开连接。

然而,实际情况依旧出现8小时断开连接问题,不清楚哪里出了问题。

最后用了第3种方法:https://blog.youkuaiyun.com/u012129031/article/details/72621288

由于我使用了Tomcat自带的连接池DBCP,在Spring中配置

				<property name="testOnBorrow" value="true"></property>
				<property name="validationQuery" value="select 1"></property>




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值