【发布时间】:2015-07-11 08:46:46
【问题描述】:
我最近将我的 MySQL 服务器更新为 MariaDB,从那以后我遇到了一些错误。
一段时间后,我的应用程序崩溃并出现以下错误:
java.util.NoSuchElementException: Timeout waiting for idle object
或
Cannot get a connection, pool error Timeout waiting for idle object
或在preparedStatement 上的executeUpdate() 上出现NullPointerExceptions!
我连接数据库的代码是:
public static void connect() {
try {
connection = DriverManager.getConnection("jdbc:mysql://"
+ Data.MySQL_host + ":3306/" + Data.MySQL_db,
Data.MySQL_user, Data.MySQL_pass);
System.out.println("MySQL connected!");
} catch (SQLException e) {
System.out.println("Error connecting to MySQL");
e.printStackTrace();
}
}
我是否必须修改我的 MariaDB 服务器,还是与应用程序相关?
【问题讨论】:
-
“一段时间后”有什么特别的意思吗?它是随机的还是在执行最后一个查询后 x 秒后?您是否在再次使用之前关闭了连接? ...还有很多问题:)
-
不知道是不是随机的。我不断地从 MySQL 发送和请求数据,但这似乎很随机。不,我对所有语句使用相同的连接。
标签: java mysql jdbc connection-pooling