2012-09-28 4 views
5

Hi Ich benutze Java mit MySql. Ich habe einige x-Hosting-Service genommen, dass ich mein Java implementiert haben WAR-Datei es einige Tage gearbeitet wird, seit 2 Tagen ich einige Störung erhalte, dieHost 'X' Blockiert wegen vieler Verbindungsfehler

java.sql.SQLException ist: null, Nachricht von Server: "Host 'X Host' ist wegen vieler Verbindungsfehler blockiert; Blockierung mit 'mysqladmin flush-hosts'".

Ich benutzte normale Datenbankverbindung sowie Verbindungspooling.

Mein Code ist:

Class.forName("com.mysql.jdbc.Driver"); 
con = DriverManager.getConnection("jdbc:mysql://IP Address:3306/DBName?user=xxxxx&password=YYYYYYY"); 

..

Bitte geben Sie eine Lösung ..

+0

Sie müssen Ihren Poolmanager richtig dimensionieren. Stellen Sie sicher, dass JDBC-Verbindungen korrekt geschlossen sind. – nab59

Antwort

5

Entsperrung des Wirts mit 'mysqladmin flush-hosts' oder Erhöhung der max_connect_errors Parameter der lösen Problem .

Serverstart:

shell> mysqld_safe --max_connect_errors=10000 & 

Laufzeit:

mysql> SET GLOBAL max_connect_errors=10000; 

Aber die Ursache für Verbindungsfehler identifiziert werden soll. Es kann durch * Überprüfen MySQL.err Protokolldatei * Überprüfen von TCP/IP-Verbindungsparameter in der Host

Referenz identifiziert werden: 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

0

Um das System wiederherzustellen Sie die mysql könnte neu starten müssen Server.

$ sudo service mysql restart 

So stoppen Sie diese wieder los, bevor sie unter Werte Neustart zu erhöhen,

$ mysql> SET GLOBAL max_connections = 500; 
$ mysql> SET GLOBAL max_connect_errors=10000; 

der aktuelle Wert bitte durch die my.cnf

$ vi /etc/mysql/my.cnf 

this helps gehen zu sehen!