服务端窗口初始化时连接数据库没问题, 能查到数据, 然后15分钟内没有处理任何请求, 15分钟一过我设定的定时器触发, 更新数据库, 就异常了, 说我的MySQL服务器失去连接
2013, 'Lost connection to MySQL server during query ([WinError 10060] 由于连接方在一段时间后没有正确答复
但是我查了我的数据库, wait_timeout是28800秒, 也就是8小时, 讲道理不应该8小时才断开吗?
我测试过, 只要每隔一分钟查一次数据库, MySQL服务器不会断开连接, 为什么15分钟内不操作数据库就自动断开连接了呢?
您好,长时间不用的连接,要维持,本来就应该周期性的发心跳包。从客户端到服务器,中间经过了一大堆节点,这些节点每一个都有可能把连接给断了。比如ping()重连、DBUtils连接池这些方法都是可以的。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。