Seite 1 von 2
[3.2] Zu viele DB-Verbindungen (Maximum User Connect)
Verfasst: 04.12.2017 19:14
von Ottington
Hallo zusammen,
ich bekomme in letzter Zeit öfters die Fehlermeldung, dass die maximale Zugriffsanzahl eines Users zur DB (Maximum User Connect) überschritten wurde. Da mein "super-netter" Anbieter mir die MySQL Settings nicht erweitern will, also die Beschränkungen weniger restritikv handhaben und mir lieber einen vServer andrehen möchte, habe ich ein kleines Problem.
Meine Frage hier ist: Wird bei jeder DB-Aktion eigentlich eine neue/eigene Verbindung aufgemacht? Ich habe ja nur den einen User in der phpbb-config. Und die obere Fehlermeldung besagt, dass sich der eine User in einem bestimmten Moment zu oft mit der DB verbunden hat. Wird im phpBB Forum 3.2 jedes mal eine neue Verbindung zur DB aufgemacht?
Danke und Gruß
Re: [3.2] Zu viele DB-Verbindungen (Maximum User Connect)
Verfasst: 04.12.2017 20:17
von Mahony
Hallo
Die Frage ist eher, ob du Extensions eingebaut hast die übermäßig Last erzeugen? Normalerweise ist nämlich kaum ein Hostingpaket mit einem Standard-phpBB-Forum so ausgelastet dass es zu übermäßig vielen Verbindungen kommt (es sei denn, dein Hoster übertreibt es mit der Beschränkung).
Grüße: Mahony
Re: [3.2] Zu viele DB-Verbindungen (Maximum User Connect)
Verfasst: 04.12.2017 20:19
von canonknipser
Wie hoch ist denn der Wert eingestellt und welche anderen Webseiten laufen über den gleichen MySQL-Server (der gehört ja in der Regel nicht exklusiv zu deinem Paket)?
Re: [3.2] Zu viele DB-Verbindungen (Maximum User Connect)
Verfasst: 05.12.2017 11:24
von Ottington
Doch, der MySQL Server ist Teil des Angebots und läßt sich nur über eine HTML-Seite administrieren. phpmyadmin gibts noch extra. Das einzige, was ich machen kann, ist einen User anlegen oder löschen. Ihn explizit konfigurieren, geht gar nicht. Ich habe auch keine Einsicht in die bestehende Konfiguration. Das heißt, ich weiß nicht, wie restriktiv Zugriffe tatsächlich sind. Dass es so ist, hat mit der dortige Support schon mal verraten.
Ansonsten: Ich habe eine Extension, die relevant sein könnte. "Post Love" Zum Liken von Beiträgen.
Aber ob die kritisch ist oder nicht, weiß ich, da ich auch keinen Zugriff auf Logs bekomme. Ich glaube aber nicht, dass sie besondere Last erzeugt.
Obwohl ist für jeden Beitrag in der DB nachschaut, ob es einen Like gibt oder nicht, kann man selbst bei ca. 10 Beiträgen pro Seite nicht wirklich von einem kritischen Volumen sprechen.
Ich bin kurz davor bei einem anderen Betreiber einen vServer zu nehmen.
Aber wie ich euch verstanden habe, ist das beim phpBB Forum eher weniger ein Thema.
Re: [3.2] Zu viele DB-Verbindungen (Maximum User Connect)
Verfasst: 05.12.2017 11:56
von Mahony
Hallo
Ottington hat geschrieben:Ich habe auch keine Einsicht in die bestehende Konfiguration. Das heißt, ich weiß nicht, wie restriktiv Zugriffe tatsächlich sind.
Du kannst dir das in phpmyadmin mittels SQL-Befehl anzeigen lassen
Ottington hat geschrieben:Doch, der MySQL Server ist Teil des Angebots und läßt sich nur über eine HTML-Seite administrieren. phpmyadmin gibts noch extra. Das einzige, was ich machen kann, ist einen User anlegen oder löschen.
Das du Zugriff auf eine Mysql-Datenbank hast, bedeutet aber nicht dass du alleiniger Benutzer des Mysql-Servers bist - darum geht es bei der Aussage von canonknipser
Das bedeutet: Auf dem Server, wo du gehostet wirst, existieren noch einige (oder viele) andere Benutzer. Wenn der Hoster aber jetzt ein Limit auf den Mysql-Server gelegt hat (das zu kurz greift, weil zu viele Benutzer den Server verwenden) dann kommt es zu besagten Problemen.
Ottington hat geschrieben:Ich bin kurz davor bei einem anderen Betreiber einen vServer zu nehmen.
Wenn dein Hoster das Limit nicht erhöhen will, würde ich auch zu einem anderen Hoster wechseln.
Grüße: Mahony
Re: [3.2] Zu viele DB-Verbindungen (Maximum User Connect)
Verfasst: 05.12.2017 12:20
von canonknipser
Ottington hat geschrieben:Ich habe auch keine Einsicht in die bestehende Konfiguration. Das heißt, ich weiß nicht, wie restriktiv Zugriffe tatsächlich sind. Dass es so ist, hat mit der dortige Support schon mal verraten.
OK, du weißt also nicht wirklich, was in "deinem" MySql passiert - keine Konfigurationsinformationen, keine Informationen über die tatsächlichen Zugriffe etc.
Was du probieren kannst: über das Kommandofenster von phpMyAdmin die Variablen abfragen, z.B. mit dem
SHOW-Kommando
- mit
siehst du alle MySQL-Variablen (unter anderem auch dein
maxconnections
)
- mit
alle Prozesse und Datenbankbenutzer, die aktuell aktiv sind (und damit auch die Anzahl der Verbindungen
).
Und normalerweise sollte phpBB immer nur eine Verbindung offen haben, egal welche und wie viele Erweiterungen aktiv sind. Die Zugriffe laufen schließlich in der Regel über das zentrale Datenbankzugriffsmodul und die Ergebnisse werden in der Regel auch noch gechached.
Re: [3.2] Zu viele DB-Verbindungen (Maximum User Connect)
Verfasst: 06.12.2017 09:18
von Ottington
Danke euch beiden für die Tips!
Die erste Auswertung ergab folgendes:
Variables: max_user_connections = 10
Status: Threads_connected = 3
Wenn ich das richtig verstanden habe, gibt es aktuell neben dem eigentlichen phpBB noch zwei andere Verbindungen zur DB.
Da außer mir niemand anderes darauf zugreift und außer dem Forum nichts anderes installiert ist, müsste es eine Extension sein.
Eine die eine eigene Verbindung aufmacht. Richtig?
Re: [3.2] Zu viele DB-Verbindungen (Maximum User Connect)
Verfasst: 06.12.2017 09:45
von canonknipser
Die Variablenausgaben sind immer Momentaufnahmen.
Ottington hat geschrieben:Da außer mir niemand anderes darauf zugreift und außer dem Forum nichts anderes installiert ist, müsste es eine Extension sein.
Eine die eine eigene Verbindung aufmacht. Richtig?
Eine Verbindung hast du ja auf jeden Fall über phpMyAdmin, eine andere für das Forum.
Die dritte kann eine "alte" Forenverbindung sein, die in dem Moment noch nicht ganz geschlossen war. Daher kann auch deine Fehlermeldung kommen, vgl.
https://dev.mysql.com/doc/refman/5.7/en ... urces.html For the MAX_USER_CONNECTIONS limit, an edge case can occur if the account currently has open the maximum number of connections permitted to it: A disconnect followed quickly by a connect can result in an error (ER_TOO_MANY_USER_CONNECTIONS or ER_USER_LIMIT_REACHED) if the server has not fully processed the disconnect by the time the connect occurs. When the server finishes disconnect processing, another connection will once more be permitted.
Gerade wenn Verbindungen (vom Server) gecached werden oder das Verbindungshandling verzögert ist, sind kurzfristig mehrere aktive Verbindungen pro User nichts ungewöhnliches.
Welche Extensions (möglichst mit Downloadquelle) hast du denn installiert? Das Extensions eigene Datenbankverbindungen aufbauen, ist ungewöhnlich.
Ottington hat geschrieben:Da außer mir niemand anderes darauf zugreift
Woher weißt du das? Hast du einen VServer oder bist du auf einem shared host? Wenn du auf einem shared host bist und keine anderen Benutzer siehst, heißt das noch lange nicht, dass keine anderen Benutzer da sind. Du hast nur nicht das Recht, sie zu sehen. Auf einer MySQL-Instanz können x Datenbanken mit y Benutzern angelegt sein, die nichts voneinander wissen. Nichtstdestotrotz teilen sie sich die gleichen Ressourcen.
Re: [3.2] Zu viele DB-Verbindungen (Maximum User Connect)
Verfasst: 07.12.2017 07:25
von Ottington
canonknipser hat geschrieben:
Ottington hat geschrieben:Da außer mir niemand anderes darauf zugreift
Woher weißt du das? Hast du einen VServer oder bist du auf einem shared host? Wenn du auf einem shared host bist und keine anderen Benutzer siehst, heißt das noch lange nicht, dass keine anderen Benutzer da sind. Du hast nur nicht das Recht, sie zu sehen. Auf einer MySQL-Instanz können x Datenbanken mit y Benutzern angelegt sein, die nichts voneinander wissen. Nichtstdestotrotz teilen sie sich die gleichen Ressourcen.
Ich hoffe doch, dass sich diese Meldung auf einen meiner User bezieht, oder nicht? Selbst wenn es shared ist, wird doch nicht ein User diese Meldung bekommen, der diese nicht verursacht hat.
Re: [3.2] Zu viele DB-Verbindungen (Maximum User Connect)
Verfasst: 07.12.2017 07:41
von Mahony
Hallo
Ottington hat geschrieben:Ich hoffe doch, dass sich diese Meldung auf einen meiner User bezieht, oder nicht?
Nein, das bezieht sich nicht auf einen deiner User.
Ottington hat geschrieben:Selbst wenn es shared ist, wird doch nicht ein User diese Meldung bekommen, der diese nicht verursacht hat.
Doch genau so ist es.
Diese Meldung wird wohl bei allen Konten kommen, die diesen Server benutzen.
Ein Beispiel: Server 1 hat 30 Konten (Benutzer). Die max_connections ist aber global auf 1000 begrenzt. 29 Konten betreiben normale Foren mit im Schnitt 30 aktiven Sessions (eingeloggten Usern). Rein rechnerisch alles im grünen Bereich. Das 30. Konto betreibt ein W.a.r.e.z-Board mit im Schnitt 40-100 aktiven Sessions. Resultat: Jedes der genannten Foren bekommt ab und zu mal diese Fehlermeldung.
Grüße: Mahony