/ / "MySQL Server ging weg" nach der Verwendung von mail () - php, mysql

"MySQL Server ging weg" nach der Verwendung von mail () - PHP, MySQL

Ich habe ein PHP-Skript, das häufig aufgerufen wird, die eine kurze Datenbankabfrage ausführt und eine E-Mail sendet. Der Datenbankcode verwendet prozedurale mysql-Funktionen wie z mysql_query()usw. Die E-Mail wird mit Hilfe der mail() Funktion.

99% der Zeit lief es ohne Probleme. Manchmal würde ich jedoch einen "MySQL-Server ist weg" -Fehler bekommen. Die ursprüngliche Reihenfolge der Ausführung war, zuerst die Post mit zu senden mail()und führen Sie dann die kurze Aktualisierungsabfrage aus. Ich habe die Reihenfolge der Ausführung geändert, um die Abfrage zuerst auszuführen und aufzurufen mail() zuletzt, und jetzt habe ich nie ein Problem.

Das Problem: mail() stört gelegentlich die Datenbankverbindung. Hat jemand irgendwelche Ideen warum? Wie sollte man nach dem Problem suchen?

Mehr Info:

Sobald das Mail-Skript den "Server weggeht"Fehler, die Abfrage wird immer mit diesem Fehler fehlschlagen, wenn ich versuche, das Skript erneut auszuführen. Wenn ich jedoch genau die gleiche Abfrage in phpMyAdmin ausführe, wird sie ohne Probleme ausgeführt, und danach wird das Mail-Skript wieder funktionieren.

Außerdem lief das Skript viele Monate lang ohneProbleme - der Fehler "Server ging weg" hat erst kürzlich begonnen, ohne dass Code oder Konfiguration von uns geändert wurde. Darüber hinaus lief das Skript über einen längeren Zeitraum ohne Probleme, wobei die Website mehr als doppelt so viel Traffic erhielt, wie es aktuell ist, so dass es zu keiner Zeit Probleme gab, wenn der Server mit viel mehr Datenbankverbindungen zu tun hatte. usw., als es gerade jetzt ist.

PHP-Version: 5.3.3

MySQL-Version: 5.0.77-log Quellenverteilung

Datenbank befindet sich auf einem anderen Server als das Webserver / PHP-Skript (keine Verbindung zu localhost)

Sowohl der Webserver als auch der Datenbankserver sind Red Hat Enterprise Linux Server Version 5.6 (Tikanga)

Antworten:

0 für die Antwort № 1

Sie haben wahrscheinlich eine zu kurze Wartezeit,
offizielle Dokumentation hat das ganze Szenario abgedeckt

PS AFAIK, es gibt keine mysql server has went away,
aber mysql server has gone away