it-swarm.com.de

Wie kann ich den Fehler "Maximale Benutzerverbindungen" beseitigen?

Ich verwende MySQLi für meine Webanwendung, aber wenn ich eine bestimmte Seite besuchen möchte, erhalte ich mysqli_connect() [function.mysqli-connect]: (42000/1203): User ***_user already has more than 'max_user_connections' active connections.

Ich habe bereits versucht, alle Verbindungen zu schließen, aber dies verbessert die Situation nicht.

Gibt es eine Möglichkeit, genau zu wissen, welche Verbindungen zu einem bestimmten Zeitpunkt geöffnet sind, oder andere nützliche Daten, die mir bei der Lösung dieses Problems helfen können?

Übrigens verwende ich PHP 5.2.17 und MySQL 5.1.

16
ahmed

Die Option max_user_connections ist eine Beschränkung, die nicht der Gesamtzahl gleichzeitiger Verbindungen in der Serverinstanz, sondern dem einzelnen Benutzerkonto auferlegt wird.

Angenommen, der Benutzer heißt [email protected]. Sie können das Verbindungslimit dieses Benutzers ermitteln, indem Sie diese Abfrage ausführen:

SELECT max_user_connections FROM mysql.user
WHERE user='db_user' AND Host='localhost';

Wenn dies ein Wert ungleich Null ist, ändern Sie ihn zurück mit:

GRANT USAGE ON *.* TO [email protected] WITH MAX_USER_CONNECTIONS 0;

oder

UPDATE mysql.user SET max_user_connections = 0
WHERE user='db_user' AND Host='localhost';
FLUSH PRIVILEGES;

Dies führt dazu, dass mysqld dem Benutzer [email protected], um die globale Einstellung max_user_connections als Grenze zu verwenden.

Wenn Sie an diesem Punkt angelangt sind, überprüfen Sie nun die globale Einstellung mit

SHOW VARIABLES LIKE 'max_user_connections';

Wenn dies ein Wert ungleich Null ist, müssen Sie zwei Dinge tun

DING # 1 : Suchen Sie nach der Einstellung in /etc/my.cnf

[mysqld]
max_user_connections = <some number>

kommentieren Sie diese Zeile aus

DING # 2 : Stellen Sie den Wert dynamisch ein

SET GLOBAL max_user_connections = 0;

Ein Neustart von MySQL ist nicht erforderlich.

VORBEHALT

Ich habe diese Einstellung in der Vergangenheit diskutiert

Versuche es !!!

24
RolandoMySQLDBA