您好我正在使用Java和MySql。我已经采取了一些x托管服务,因为我已经部署了我的java .war文件,它工作了几天,因为2天我收到了一些错误
java.sql.SQLException:null,来自服务器的消息:“Host'X host'因许多连接错误而被阻止;使用'mysqladmin flush-hosts'解锁”。
我使用了普通的数据库连接以及连接池。
我的代码是:
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://IP Address:3306/DBName?user=xxxxx&password=YYYYYYY");
...
请提供解决方案..
答案 0 :(得分:6)
使用'mysqladmin flush-hosts'解锁主机 或者增加max_connect_errors参数将解决问题。
服务器启动:
shell> mysqld_safe --max_connect_errors=10000 &
运行时:
mysql> SET GLOBAL max_connect_errors=10000;
但应确定连接错误的原因。 它可以通过识别 *检查MySQL.err日志文件 *检查主机中的TCP / IP连接参数
参考: http://dev.mysql.com/doc/refman/5.0/en/blocked-host.html http://dev.mysql.com/doc/refman/5.0/en/server-system-variables.html#sysvar_max_connect_errors
答案 1 :(得分:0)
要恢复系统,您可能需要重新启动mysql服务器。
$ sudo service mysql restart
要再次停止此操作,请在重新启动之前增加以下值,
$ mysql> SET GLOBAL max_connections = 500;
$ mysql> SET GLOBAL max_connect_errors=10000;
要查看当前值,请查看my.cnf
$ vi /etc/mysql/my.cnf
希望这有帮助!