【发布时间】:2014-04-15 21:27:44
【问题描述】:
我目前正在用 java 编写一个程序,我经常使用 JDBC 驱动程序从 MySQL 数据库中获取数据。 起初,我每次运行程序进行测试时都尝试关闭连接,但在该行出现错误。我离开了 'connection.close()' 行并且它起作用了,这在当时对我来说已经足够好了。
不幸的是,这适得其反,因为现在我无法再运行该程序了。它给出了以下错误。
Data source rejected estabilishment of connection, message from server: "Too many connections"
老实说,我不知道如何解决这个问题。 Visual Studio 中的另一个相关应用程序在我每次运行时都会重建数据库,所以我认为这不是问题。我在我的 java 编辑器 Netbeans 中删除了数据库,然后重新导入它,但这也没有解决它。我的谷歌搜索技巧也让我失望了,即使是关于 stackoverflow 的问题似乎也没有奏效。
任何帮助将不胜感激
【问题讨论】:
-
关闭你的连接.
-
关于如何“重置”错误的不同说明:确保没有后台进程在打开连接运行(连接将在 程序终止时关闭,但后台程序仍在运行),如果一切都失败了,强制让 MySQL 弹出它的连接(我相信这意味着 "restart" 在 MySQL 术语中)。
-
connection.close()抛出的错误是什么? -
作为一种习惯,如果不需要打开连接,则应关闭连接。顺便检查一下你的 mysql 配置,看看你有多少并发连接。
-
是的,如果我知道如何关闭连接,我们就不会在这里了吧?我尝试在 MySQL 中使用 SHOW PROCESSLIST 命令,但我在那里只看到了 1 个连接。另外我想我已经迫不及待想尝试最后一个选项,转到我计算机的“服务”并重新启动 MySQL 服务?