我看到JDBC MySQL驱动程序在10秒后一直失败连接尝试停止MySQL,但我想更改该超时。如何在MySQL JDBC驱动程序上设置连接超时?
我尝试在连接URI中添加?connectTimeout = 2000 & socketTimeout = 2000,但这没有什么区别。
有没有办法自定义连接到MySQL时驱动程序返回超时需要多长时间?
谢谢!
爱德华
我看到JDBC MySQL驱动程序在10秒后一直失败连接尝试停止MySQL,但我想更改该超时。如何在MySQL JDBC驱动程序上设置连接超时?
我尝试在连接URI中添加?connectTimeout = 2000 & socketTimeout = 2000,但这没有什么区别。
有没有办法自定义连接到MySQL时驱动程序返回超时需要多长时间?
谢谢!
爱德华
您可以更改MySQL配置文件中的默认值(连接超时mysqld中的部分选项) - 如果这个文件是不是你访问
[mysqld]
connect-timeout=100
,那么你可以设置这个使用此语句值 -
SET GLOBAL connect_timeout=100;
您可以使用此设置连接超时:
con.query('SET GLOBAL connect_timeout=2000')
con.query('SET GLOBAL wait_timeout=2000')
con.query('SET GLOBAL interactive_timeout=2000')
如需更多帮助,请参阅MySqlConnection
我尝试添加?connectTimeout = 2000 &了socketTimeout = 2000的连接URI,但并没有发挥作用。
这正是它的配置,如
jdbc:mysql://aaa.bbb.ccc.rds.amazonaws.com:1234/hello?connectTimeout=5000&socketTimeout=30000
见https://dev.mysql.com/doc/connector-j/5.1/en/connector-j-reference-configuration-properties.html。
我很困惑....不是一个mysql守护进程设置。如果你想让该设置成为客户端,该怎么办?即。我的客户端可能没有来自守护程序服务器的设置,对吧?或者我得到这个错误? –
这是MySQL服务器上的设置。对于试图在服务器停止时连接到该服务器的客户端不会产生任何影响。 –