如何查看/更改MySQL连接超时设置?

2022-09-02 00:38:51

我有一个Java程序。当我登录时,经过~600,000毫秒(我实际上尝试了几次,它总是~600,000。这就是为什么我认为有一个地方设置了600,000毫秒的超时。我的数据库连接崩溃,我的程序不再工作(它总是需要连接到数据库)。它给了我错误。我这是我的mysql连接设置:Communication link failure

import java.sql.*;
import javax.swing.*;
public class mysqlconnect {
    Connection conn = null;
    public static Connection ConnectDb()    {
        try{
            Class.forName("com.mysql.jdbc.Driver");
            Connection conn = DriverManager.getConnection("jdbc:mysql://server_name/database_name","user_name","user_password");
            return conn;
        }catch (Exception e) {
            JOptionPane.showMessageDialog(null, "Cant connect to db");
            return null;
        }
    }
}

我尝试将 &添加到我的代码中,但没有运气。有没有办法去phpmyadmin并在那里更改一些设置(增加超时时间)??autoReconnect=truetcpKeepAlive


答案 1
SET SESSION wait_timeout = 999999;//or anything you want

从 mysql 命令行,这将增加超时值。为了能够看到该值:

SHOW VARIABLES LIKE 'wait_timeout';

答案 2

您可以提出此请求以在MySql中显示您的超时

SHOW VARIABLES LIKE 'connect_timeout';

接下来,您可以将其更新为60秒以进行示例

SET GLOBAL connect_timeout=60;

如果问题是查询,则可以使用 Statement.setQueryTimeout


推荐