Opcja max_user_connections jest narzuconym limitem, nie na całkowitą liczbę jednoczesnych połączeń w instancji serwera, ale na indywidualne konto użytkownika.
Powiedzmy, że użytkownik jest nazywany db_user@localhost
. Możesz dowiedzieć się, jaki jest limit połączeń tego użytkownika, uruchamiając to zapytanie:
SELECT max_user_connections FROM mysql.user
WHERE user='db_user' AND host='localhost';
Jeśli jest to wartość niezerowa, zmień ją z powrotem za pomocą:
GRANT USAGE ON *.* TO db_user@localhost WITH MAX_USER_CONNECTIONS 0;
lub
UPDATE mysql.user SET max_user_connections = 0
WHERE user='db_user' AND host='localhost';
FLUSH PRIVILEGES;
Spowoduje to, mysqld
że użytkownik będzie db_user@localhost
mógł użyć globalnego ustawienia max_user_connections jako swojego limitu.
Po przejściu do tego punktu sprawdź teraz ustawienie globalne za pomocą
SHOW VARIABLES LIKE 'max_user_connections';
Jeśli jest to wartość niezerowa, musisz zrobić dwie rzeczy
RZECZ 1 : Poszukaj ustawienia w/etc/my.cnf
[mysqld]
max_user_connections = <some number>
skomentuj tę linię
RZECZ 2 : Ustaw wartość dynamicznie
SET GLOBAL max_user_connections = 0;
Ponowne uruchomienie MySQL nie jest wymagane.
CAVEAT
Omawiałem to ustawienie w przeszłości
Spróbuj !!!