Am Wochenende sind mir bei einem MySQL-Server die Connections ausgegangen. Ich wollte auf keinen Fall MySQL neu starten. Das hätte noch mehr Connections erzeugt. Die Hardware war jedoch für deutlich mehr Connections ausgelegt als konfiguriert. Daher bin ich wie folgt vorgegangen. Erstmal hab ich die Anzahl der verwendeten Connections gecheckt:
mysql> show status where variable_name like "max%"; +----------------------+-------+ | Variable_name | Value | +----------------------+-------+ | Max_used_connections | 11 | +----------------------+-------+ 1 row in set (0.00 sec)
Danach hab ich mir angesehen was konfiguriert ist:
mysql> show variables like 'max_connections'; +-----------------+-------+ | Variable_name | Value | +-----------------+-------+ | max_connections | 100 | +-----------------+-------+ 1 row in set (0.03 sec)
Anschließend kann man den neuen Wert zur Laufzeit mit
set GLOBAL max_connections=500;
setzen. Das ganze kann man auch über den MySQL-Administrator erledigen. Ich finde den direkten Weg aber irgendwie praktischer.
Nicht vergessen, dass der neue Wert auch in der MySQL-Konfiguration hinterlegt werden muss, sonst ist beim nächsten Neustart die Einstellung verloren. Daher einfach set-variable = max connections=500
eintragen.