Sie befinden sich hier im Forenarchiv von phpforum.de wenn Sie direkt ins Forum möchten, klicken Sie bitte hier. Zur Startseite kommen Sie hier.

#1040 - Too many connections

Hallo,

ich habe folgendes Problem:

Ich komme also voll motiviert aus dem Wochenende um an der Website (die bis Mittwoch eigentlich fertig wäre) weiterzubauen.
Als ich die Index öffne meldet es mir: too many connections!

Also wie ich schon rausgefunden habe, sollte man also alle mysql_queries wieder mit mysql_close() schließen. Das wusste ich vorher nicht (schande über mich)

Meine Frage jetzt:
Wo schließe ich die DB jetzt?
Gleich nach mysql_query oder erst wenn der letzte wert von mysql_fetch_array ausgelesen ist?

Und bringt das auch etwas, wenn ich das jetzt mache oder hab ich einfach Pech gehabt und hätte es von Anfang an machen sollen (Wie bringe ich die Seite wieder zum laufen?)

mfg
eine ratlos springende Blaubeere

Hier gehts zum Orginal Eintrag "#1040 - Too many connections" im Forum

Antworten

ich denke mal du machst im Script immer
Code:                   In Zwischenablage kopieren (nur IE)
1">

dann gibt es schon sinn es evtl. direkt dahinter zu machen.
Am besten (meiner Meinung nach) ist es da wenn man am Anfang der Page (im Header) eine DB-Connection aufbaut und sie am ender der Page (im Footer) wieder schliesst, so verhindert man pro Seitenaufbau 1000ende von Connections.

Gruß

Nickless


2.

Ein explizites aufrufen von mysql_close bei benutzung von mysql_connec ist unnötig.
Die verbindung von mysql_connect wird automatisch bei Beendigung des Scriptes geschlossen.

Zitat:
mysql_connect

The link to the server will be closed as soon as the execution of the script ends, unless it's closed earlier by explicitly calling mysql_close().

im gegensatz zu mysql_pconnect
Zitat:
mysql_pconnect

Second, the connection to the SQL server will not be closed when the execution of the script ends. Instead, the link will remain open for future use (mysql_close() will not close links established by mysql_pconnect()).





3.

Aber schöner ist es trotzdem mysql_close() zu verwenden.


4.

Nicht wirklich. Schön ist die Verwendung der Garbage Collection.


5.

Zitat:
Schön ist die Verwendung der Garbage Collection.
?! WTF ?!

Was ist des wenn man fragen darf?


6.

Das automatische Aufräumen nicht mehr benötigter Ressourcen. Bei PHP eben am Ende des Skriptes. Alles andere macht nur Sinn, wenn ein PHP Skript die ganze Zeit durchläuft.


7.

Also wenn ich eine footer.php schreibe in der
Code:                   In Zwischenablage kopieren (nur IE)
2">

steht ist das doch sinnvoll oder?


8.

verkehrt ist es nicht, aber normalerweise sollte PHP das auch so wieder schliessen.


9.

Aus gutem Grund wurde z.B. Java so entwickelt, dass der Programmierer sich nie um das "Aufräumen" selbst kümmern muss, da man bei komplexen Systemen oft gar nicht oder nur mit großem Aufwand selbst entscheiden könnte, welche Resource noch benötigt wird und welche nicht. Deswegen kann man eine Garbage Collection wirklich als "schön" bezeichnen.


Hier gehts zum Orginal Eintrag "#1040 - Too many connections" im Forum
 
phpforum.de | Impressum | Handy Bundles