phpbar.de logo

Mailinglisten-Archive

[php] AW: [php] mysql connect ?

[php] AW: [php] mysql connect ?

Gloss Mathias Mathias.Gloss_(at)_start.de
Fri, 7 Jan 2000 16:30:44 +0100


Aloha,

> ----------
> Von: 	Alexander Meis[SMTP:am_(at)_pixelhouse.de]
> 
> ich hab gerade festgestellt das mysql_pconnect im gegensatz zu
> mysql_connect
> auf dem Server einen Mysql Task hinerläst.
> 
Das ist auch richtig so, da pconnect = persistant connections
= dauerhafte Verbindung. Diese wird erst beendet, wenn der
Webserverprozess sich beendet (beim Apache je nach Konfigura-
tion nach soundsoviel Seitenauslieferungen). Gilt aber nur,
wenn PHP als Apache-Modul kompiliert ist.

> Kann ich auf eine verbindung die mit mysql_pconnect aufgemacht wurde
> irgentwie
> wieder drauf zurückgreiffen ?
> 
Wenn du nochmal mysql_pconnect zum gleichen Server auf-
machst, und schon eine Verbindung vorhanden war, dann
wird sie wiederverwendet.

Doch Achtung:
Apache hat meist mehrer Serverprozesse --> Kann sein dass
die erste Anfrage von Prozess 1 bearbeitet wurde, die 2.
Anfrage von Prozess 2 (evtl. noch mehr). Dann hast du halt 
2 Verbindungen zur DB offen.

> oder wann benutzte ich mysql_pconnect und mysql_connect ?
> 
Ich wuerde immer zuerst versuchen eine pers. Connection
aufzumachen, wenn du oft auf die DB zugreifst. Greifst
du nur bei jeder 200. Seite auf die DB zu, dann lohnt sich
das nicht.

> Muss ich die Verbinungen wieder schiessen ? wenn ja wie ?
> 
Die Verbindungen werden wie gesagt geschlossen, wenn der
Webserver beendet wird, oder wenn ein Webserverprozess neu
gestartet wird.
--> Schliessen lohnt sich nicht, wenn du dich für pers.
    Connections entschieden hast, weil du viele DB-Abfragen
    hast.


Grüße, Mathias




php::bar PHP Wiki   -   Listenarchive