mysqli Fkt => too many connections

bodo2005

Lt. Junior Grade
Registriert
Okt. 2005
Beiträge
333
Bin gerade dabei alle Datenbankabfragen zur MySQL Datenbank mit mysqli Funktionnen zu realisieren, da diese eine schöne Transaktionssicherung beinhalten.
Leider tritt jetzt immer öfter der Fehler:
too many connections

auf, woran liegt dies und wie kann man diesen beheben? (ist sehr spontan auftretend)

Typ: Warning
Meldung: mysqli_connect() [<a href='function.mysqli-connect'>function.mysqli-connect</a>]: (HY000/1040): Too many connections
Zeile: 15
File: C:\xampp\htdocs\abi07\include\template.class.php
12:
13: // MySQL connect
14: $this->mysql = mysqli_connect($set_db_host, $set_db_user, $set_db_pass);
15:
16: // Database
17: mysqli_select_db($this->mysql, $set_db_db);
18:

Wie kann bei einer Person aufm Entwicklungspc zu viele Verbindungen aktiv sein?
 
testest du das beim provider? Wenn ja, dann ist der Server wohl etwas überlastet, bzw. deine Anwendung stößt zu viele MYSQL-Befehle ab.

Bei Providern ist es üblich, dass man z.B. 10 gleichzeitig laufende Anfragen haben kann. Möglicherweise überschreitest du dies. Eventuell schließt du deine MYSQL-Befehle nicht ordentlich ab. Vielleicht hilft konsequentes verwenden von mysqli->close
 
Am Ende der Anwendung beim Ausgeben des fertigen Templates wird die MySQL Verbindung geschlossen. (D.h. im Konstruktur geöffnet, dann immer mit mysqli_query o.Ä. gearbeitet und bei der Ausgabe geschlossen).

Nein es ist auf meinem Heim PC der nicht überlastet ist (1 GB Ram, P4 3 GHz) in der php.ini werden 128 verbindungen erlaubt.
 
möglicherweise sind die Transaktionen zu lang, bzw. zu viel? Kann ich mir zwar kaum vorstellen, aber wäre möglich.

Was anderes
Code:
12:
13: // MySQL connect
14: $this->mysql = mysqli_connect($set_db_host, $set_db_user, $set_db_pass);
15:
16: // Database
17: mysqli_select_db($this->mysql, $set_db_db);
18:

Den Connect machst du hoffentlich nicht bei jeder neuen Abfrage, sondern einmal pro Webseitenaufruf?

Btw. Es gab da auch was mit der persistenten MySQL-Verbindung. Vielleicht mal danach googeln. Möglicherweise bleibt dein Connect noch offen. Anders kann ich mir das nicht vorstellen, müsstest du eventuell Codeteile zeigen.
 
OK vielen Dank.
Ich werde mal schaun. Nein die Abfrage wird im __contruct() aufgtebaut und bei der Rückgabe des Templates an den Browser wieder geschlossen.
 
Zurück
Oben