MySQL Verbindung wird nach Skript-Abbruch nicht gelöst
am 31.05.2005 22:13:19 von Timo Gallen
Hallo,
ich habe eine Seite auf einem LAMP Server mit einem PHP-Skript, das eine
MySQL-Verbindung mit mysql_connect() herstellt (keine persistente
Verbindung). Wenn nun eine Abfrage gestartet wird, die etwas länger
dauert und der Besucher lange genug gewartet und inzwischen meine Seite
verlassen hat, läuft der gestartete Datenbank-Prozess weiterhin
(zumindest laut phpMyAdmin).
Läuft das PHP-Skript dann im Hintergrund noch weiter oder wieso wird die
MySQL-Verbindung nicht automatisch gelöst?
Wenn der Besucher nicht mehr da ist, brauche ich die Abfrage ja auch
nicht weiter fortzuführen.
Irgendeine Idee, wie ich den Prozess in so einem Fall beenden kann?
Es dankt
Timo
Re: MySQL Verbindung wird nach Skript-Abbruch nicht gelöst
am 01.06.2005 00:24:53 von Hartmut Holzgraefe
Timo Gallen wrote:
> Läuft das PHP-Skript dann im Hintergrund noch weiter [...]
je nach Konfiguration ja
> Wenn der Besucher nicht mehr da ist, brauche ich die Abfrage ja auch=20
> nicht weiter fortzuführen.
>=20
> Irgendeine Idee, wie ich den Prozess in so einem Fall beenden kann?
siehe http://php.net/manual/en/ref.misc.php#ini.ignore-user-abort
und http://php.net/ignore_user_abort
--=20
Hartmut Holzgraefe, Senior Support Engineer .
MySQL AB, www.mysql.com
Re: MySQL Verbindung wird nach Skript-Abbruch nicht gelöst
am 01.06.2005 07:09:20 von Timo Gallen
> siehe http://php.net/manual/en/ref.misc.php#ini.ignore-user-abort
> und http://php.net/ignore_user_abort
Laut phpinfo() ist der Wert ignore_user_abort = "Off".
Zur Laufzeit wird er auch nicht verändert. Trotzdem läuft die MySQL
Anfrage weiter.
Gibt es vielleicht nochetwas zu berücksichtigen?
Danke für die Antwort.
Timo
Re: MySQL Verbindung wird nach Skript-Abbruch nicht gelöst
am 27.06.2005 16:31:57 von Christian Schmelzer
Timo Gallen wrote:
>> siehe http://php.net/manual/en/ref.misc.php#ini.ignore-user-abort
>> und http://php.net/ignore_user_abort
>
> Laut phpinfo() ist der Wert ignore_user_abort = "Off".
> Zur Laufzeit wird er auch nicht verändert. Trotzdem läuft die MySQL
> Anfrage weiter.
>
Vermutlich braucht deine Datenbankabfrage so lange. MySQL scheint die
Bearbeitung eben nicht zu beenden bloss weil die Connection weg ist.
Christian