more than 'max_user_connections' active connections

Fragen zur Bedienung von phpBB 3.0.x, Probleme bei der Benutzung und alle weiteren Fragen inkl. Update auf die neuste phpBB 3.0.14 Version
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Stonewoman
Mitglied
Beiträge: 313
Registriert: 10.07.2005 15:09
Wohnort: Vinnen
Kontaktdaten:

Re: more than 'max_user_connections' active connections

Beitrag von Stonewoman »

Hallo,

ich hab meinen Provider angeschrieben und hab folgende Antwort bekommen:
heute Vormittag konnte der Techniker nur Empfehlen Ihren Account
(Datenbank
xxx) zu deaktivieren, damit die anderen
Kunden
des Servers nicht weiter in Mitleidenschaft gezogen werden,da Ihr Forum
massiv viele DB Verbindungen öffnet und offen hielt, die Anfragen sind
mittlerweile zurück gegangen.

Auszug/Momentaufnahme heute Mittag:(Die Zahlen 608, 584 etc zeigen die
Sekunden seit dem die Verbindung schon gehalten wird)

4422146 xxx localhost xxx Query 608 Locked UPDATE
phpbb3_sessions SET session_time = 1231241736, session_page =
'search.php', session_forum_id = 0 WHERE session_id =
'9ae28e82549ef474f4067a50ace0a4bc

Mittlerweile haben die Anfragen nachgelassen und der Server sich
beruhigt.

Mit freundlichen Grüßen'
Nach meiner Nachfrage, was denn nun zu tun sei bekam ich diese Antwort:
Hallo,

das weis ich nicht, um dies zu beurteilen müsste jemand hunderte
Zeilen Log File durchgehen und versuchen heraus zu finden wer
dort und warum auf Ihrer Webseite war und was dort exakt wie
oft von wo aus aufgerufen wurde, allerdings fürchte ich das
niemand die dafür nötige Zeit investieren oder bezahlen möchte :-/

Wenn Sie einen versuch wagen möchten, die Log Files werden vom
System Nächtlich in den Ordner Logs ihres FTP Accounts gelegt.

Mit freundlichen Grüßen
Und heute war mein Forum wieder fast 2 Stunden nicht zu erreichen... Tolle Aussichten...

Grüße, Stoni.
http://forum.skoliose-op.info
phpBB-Version: 3.0.11 | Style: subsilver2
MODs: Board3Portalv1.0.2 | Auto-Groups-101 | Anti_double_post_v1.0.5 | Geomap-2.1.0 | Who_was_here_1.0.0-RC1 | Firefox 3 Password Management Fix 1.0.0. | Smilies Categories 1.0.3 | Tablemaker Standalone) | NV_advanced_last_topic_titles_1_2_8
brummel
Mitglied
Beiträge: 222
Registriert: 12.06.2005 20:16

Re: more than 'max_user_connections' active connections

Beitrag von brummel »

maxundmoritz hat geschrieben:Ich weiß nicht, ob es daran liegt.
Wir hatten teilweise 500 User online und es ging trotzdem!
Das kann ich von mir auch bestätigen, 400-500 gleichzeitige User haben das Problem noch nicht "provoziert".
Wenn es hin und wieder dazu kommt, waren zwischen 20 und 60 User online.
Zuletzt geändert von brummel am 08.01.2009 20:20, insgesamt 1-mal geändert.
Stonewoman
Mitglied
Beiträge: 313
Registriert: 10.07.2005 15:09
Wohnort: Vinnen
Kontaktdaten:

Re: more than 'max_user_connections' active connections

Beitrag von Stonewoman »

Ich hatte vor der Fehlermeldung auch nur um die 20 User online...
http://forum.skoliose-op.info
phpBB-Version: 3.0.11 | Style: subsilver2
MODs: Board3Portalv1.0.2 | Auto-Groups-101 | Anti_double_post_v1.0.5 | Geomap-2.1.0 | Who_was_here_1.0.0-RC1 | Firefox 3 Password Management Fix 1.0.0. | Smilies Categories 1.0.3 | Tablemaker Standalone) | NV_advanced_last_topic_titles_1_2_8
maxundmoritz
Mitglied
Beiträge: 115
Registriert: 25.11.2007 23:05

Re: more than 'max_user_connections' active connections

Beitrag von maxundmoritz »

Stonewoman hat geschrieben:Hallo,

ich hab meinen Provider angeschrieben und hab folgende Antwort bekommen:
heute Vormittag konnte der Techniker nur Empfehlen Ihren Account
(Datenbank
xxx) zu deaktivieren, damit die anderen
Kunden
des Servers nicht weiter in Mitleidenschaft gezogen werden,da Ihr Forum
massiv viele DB Verbindungen öffnet und offen hielt, die Anfragen sind
mittlerweile zurück gegangen.

Auszug/Momentaufnahme heute Mittag:(Die Zahlen 608, 584 etc zeigen die
Sekunden seit dem die Verbindung schon gehalten wird)

4422146 xxx localhost xxx Query 608 Locked UPDATE
phpbb3_sessions SET session_time = 1231241736, session_page =
'search.php', session_forum_id = 0 WHERE session_id =
'9ae28e82549ef474f4067a50ace0a4bc

Mittlerweile haben die Anfragen nachgelassen und der Server sich
beruhigt.

Mit freundlichen Grüßen'
Nach meiner Nachfrage, was denn nun zu tun sei bekam ich diese Antwort:
Hallo,

das weis ich nicht, um dies zu beurteilen müsste jemand hunderte
Zeilen Log File durchgehen und versuchen heraus zu finden wer
dort und warum auf Ihrer Webseite war und was dort exakt wie
oft von wo aus aufgerufen wurde, allerdings fürchte ich das
niemand die dafür nötige Zeit investieren oder bezahlen möchte :-/

Wenn Sie einen versuch wagen möchten, die Log Files werden vom
System Nächtlich in den Ordner Logs ihres FTP Accounts gelegt.

Mit freundlichen Grüßen
Und heute war mein Forum wieder fast 2 Stunden nicht zu erreichen... Tolle Aussichten...

Grüße, Stoni.
offtopic, aber wer ist denn Dein Provider? Ich habe noch nie so eine unprofessionelle Rechtschreibung und Ausdrucksweise eines Unternehmens gelesen :x
Stonewoman
Mitglied
Beiträge: 313
Registriert: 10.07.2005 15:09
Wohnort: Vinnen
Kontaktdaten:

Re: more than 'max_user_connections' active connections

Beitrag von Stonewoman »

maxundmoritz hat geschrieben:aber wer ist denn Dein Provider?
Ich bin bei Suleitec.
http://forum.skoliose-op.info
phpBB-Version: 3.0.11 | Style: subsilver2
MODs: Board3Portalv1.0.2 | Auto-Groups-101 | Anti_double_post_v1.0.5 | Geomap-2.1.0 | Who_was_here_1.0.0-RC1 | Firefox 3 Password Management Fix 1.0.0. | Smilies Categories 1.0.3 | Tablemaker Standalone) | NV_advanced_last_topic_titles_1_2_8
Stonewoman
Mitglied
Beiträge: 313
Registriert: 10.07.2005 15:09
Wohnort: Vinnen
Kontaktdaten:

Re: more than 'max_user_connections' active connections

Beitrag von Stonewoman »

Hallo,

mittlerweile kotzt mich diese Fehlermeldung echt an. Sie kommt jeden Tag in einem Zeitraum von 1 bis 2 Stunden. Es sind aber immer nur ein paar User im Board... Gibt es nicht irgendwas, was ich da machen kann?

Würde mich ja gerne noch mal an meinen Provider wenden, aber was soll ich ihm schreiben, was er tun soll??

Grüße, Stoni.
http://forum.skoliose-op.info
phpBB-Version: 3.0.11 | Style: subsilver2
MODs: Board3Portalv1.0.2 | Auto-Groups-101 | Anti_double_post_v1.0.5 | Geomap-2.1.0 | Who_was_here_1.0.0-RC1 | Firefox 3 Password Management Fix 1.0.0. | Smilies Categories 1.0.3 | Tablemaker Standalone) | NV_advanced_last_topic_titles_1_2_8
maxundmoritz
Mitglied
Beiträge: 115
Registriert: 25.11.2007 23:05

Re: more than 'max_user_connections' active connections

Beitrag von maxundmoritz »

Die sollen Euch auf einen stärkeren Server packen. Was für die natürlich auch eine Kostenfrage ist.
brummel
Mitglied
Beiträge: 222
Registriert: 12.06.2005 20:16

Re: more than 'max_user_connections' active connections

Beitrag von brummel »

4seven hat geschrieben:bei einem eigenen server:
Du solltest zuerst persistente MySQL-Verbindungen in der php.ini abschalten, falls noch nicht geschehen.

Ersetze:

Code: Alles auswählen

[MySQL]
; Allow or prevent persistent links.
mysql.allow_persistent = On
mit:

Code: Alles auswählen

[MySQL]
; Allow or prevent persistent links.
mysql.allow_persistent = Off
Danach Apache neustarten.

Auch solltest du die maximale Anzahl der Verbindungen am MySQL-Server ändern. Dazu in der Datei /etc/my.cnf oder /etc/mysql/my.cnf folgende Option im Abschnitt [mysqld] hinzufügen bzw. anpassen:

Code: Alles auswählen

max_connections = 1000
Danach MySQL neustarten.
Mein Provider schreibt mir dazu
diese Einstellung muss von Seiten Ihres Scriptes ausgehen, dieses wird bzw. kann nicht Serverseitig von uns eingestellt werden.

Wo genau es aber bei Ihren Scripten steht müssten Sie bei den Hersteller des Scriptes nachfragen. Meist steht ein entsprechender Zusatz dazu in der Konfigurationsdatei die die Verbindungsdaten zur MySQL-Datenbank hat.

Hier nur mal ein Beispiel aus einer anderen Datei:
define('USE_PCONNECT', 'false'); // use persistent connections?
Wie und wo stelle ich das dann in phpBB3 um?
brummel
Mitglied
Beiträge: 222
Registriert: 12.06.2005 20:16

Re: more than 'max_user_connections' active connections

Beitrag von brummel »

brummel hat geschrieben: Wie und wo stelle ich das dann in phpBB3 um?
Nochmal nachfrag :oops:
Ottokar
Mitglied
Beiträge: 25
Registriert: 16.11.2008 11:58

Re: more than 'max_user_connections' active connections

Beitrag von Ottokar »

@brummel: stand auf der Seite 1 dieses Themas hier: http://www.phpbb.de/community/viewtopic ... 9#p1067547
Ob das in der config. php der Version 3.x von phpbb noch so funktioniert, weis ich allerdings nicht, denn die Variable taucht in den Dateien von phpbb 3.x nirgendwo auf.

Edit: funktioniert nicht!
Diese Variable heist bei phpbb 3.x '$persistency' und wird in den datenbankspezifischen Dateien unter 'root\includes\db' abgetestet, d.h. wenn die Datenbank persistent connections zulässt, werden diese automatisch benutzt. Einfache Lösung wäre, alle 'mssql_pconnect' in 'mssql_connect' zu ändern, bzw. (sauberer) den Test zu umgehen und daraus eine einfache Zuweisung zu machen. Mal am Beispiel der mssql.php, aus:

Code: Alles auswählen

		if (version_compare(PHP_VERSION, '5.1.0', '>=') || (version_compare(PHP_VERSION, '5.0.0-dev', '<=') && version_compare(PHP_VERSION, '4.4.1', '>=')))
		{
			$this->db_connect_id = ($this->persistency) ? @mssql_pconnect($this->server, $this->user, $sqlpassword, $new_link) : @mssql_connect($this->server, $this->user, $sqlpassword, $new_link);
		}
		else
		{
			$this->db_connect_id = ($this->persistency) ? @mssql_pconnect($this->server, $this->user, $sqlpassword) : @mssql_connect($this->server, $this->user, $sqlpassword);
		}
wird

Code: Alles auswählen

		if (version_compare(PHP_VERSION, '5.1.0', '>=') || (version_compare(PHP_VERSION, '5.0.0-dev', '<=') && version_compare(PHP_VERSION, '4.4.1', '>=')))
		{
			$this->db_connect_id = @mssql_connect($this->server, $this->user, $sqlpassword, $new_link);
		}
		else
		{
			$this->db_connect_id = @mssql_connect($this->server, $this->user, $sqlpassword);
		}
d.h. statt dem Test auf persistent connections und anschließdender Zuweisung dieser oder normaler connections wird gleich die Zuweisung auf non persistent connections vorgenommen. Das müsste dann analog in allen Dateien:
- firebird.php
- mssql.php
- mssql_odbc.php
- mysql.php
- mysqli.php
- oracle.php
- postgres.php
- sqlite.php
bzw. nur der für den vorliegenden Datenbanktyp verwendeten geändert werden.
___________
Ich habe auch schon mehrere dieser Fehlermeldungen erhalten, obwohl nachweislich des Datenbanklogs nur max. 25 persistent connections offen waren und das mit der Fehlermeldung angezeigte Limit deutlich höher liegt. Ich habe deshalb einen anderen Verdacht, was die Ursache betrifft.
Es werden ja mehrere Webserver auf einer Maschine virtualisiert, wenn man nicht gerade einen eigenen Server betreibt oder gemietet hat.
Ich vermute nun, da die Storage ja unabhängig von der Virtualisierung auf der Hardware läuft, dass die Fehlermeldung tatsächlich von dort kommt, d.h. nicht die für den eigenen Webserver virtualisierte Datenbank hat zu viele persistent connections, sondern die tatsächlich physisch auf der Hardware befindliche. D.h. es werden dabei alle persistent connections aller auf der Hardware virtualisierten Datenbanken zusammengezählt.
Das würde alles erklären.
Zu beheben wäre die Ursache dann nur, indem der Provider weniger Kunden auf einen Server packt oder man sich einen Povider sucht, dessen Virtualisierungssoftware und Hardware leistungsfähiger ist.
Antworten

Zurück zu „[3.0.x] Administration, Benutzung und Betrieb“