聊聊mysql jdbc的queryTimeout及next方法

聊聊mysql jdbc的queryTimeout及next方法,第1张

本文主要介绍一下mysql jdbc statement的queryTimeout及resultSet的next方法

mysql-connector-java-5.1.43-sources.jar!/com/mysql/jdbc/PreparedStatement.java

mysql-connector-java-5.1.43-sources.jar!/com/mysql/jdbc/MysqlIO.java

mysql-connector-java-5.1.43-sources.jar!/com/mysql/jdbc/StatementImpl.java

mysql-connector-java-5.1.43-sources.jar!/com/mysql/jdbc/ResultSetImpl.java

mysql-connector-java-5.1.43-sources.jar!/com/mysql/jdbc/RowDataCursor.java

mysql-connector-java-5.1.43-sources.jar!/com/mysql/jdbc/MysqlIO.java

对于mysql jdbc来说:

MySQL服务器默认的“wait_timeout”是28800秒即8小时,意味着如果一个连接的空闲时间超过8个小时,MySQL将自动断开该连接,而连接池却认为该连接还是有效的(因为并未校验连接的有效性),当应用申请使用该连接时,就会导致上面的报错。

只能修改MySQL的参数了,wait_timeout最大为31536000即1年,在my.cnf中加入:

[mysqld]

wait_timeout=31536000

interactive_timeout=31536000

重启生效,需要同时修改这两个参数。

调大mysql的两个timeout参数。jdbc链接池链接保持链接调大mysql的两个timeout参数,连接池中的链接失效了,链接超时后被mysql关闭了,调大mysql的两个timeout参数即可。连接池技术的核心思想是:连接复用,通过建立一个数据库连接池以及一套连接使用、分配、管理策略,使得该连接池中的连接可以得到高效、安全的复用。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/7444615.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-05
下一篇 2023-04-05

发表评论

登录后才能评论

评论列表(0条)

保存