Ich wechselte zu PDO dauerhafte Verbindungen. Ich bin auf Situationen gestoßen, in denen MySQL (aufgrund von Inaktivität) eine Verbindung (am Ende) korrekt schließt und PDO sie nicht annimmt, die Verbindung in ihrem Cache verfügbar hält und von diesem Zeitpunkt an versucht, diese Verbindung zu verwenden in einem Fehler.Schließt PDO jemals persistente Verbindungen?
Von dem, was ich gelesen habe, ist dieses Verhalten "per Design" (für mich sieht es aus wie PDO ist aus dem Weg, nicht dauerhafte Verbindungen zu unterstützen).
Wie auch immer, ich würde gerne wissen, ob PDO jemals eine Verbindung in seinem Pool schließen würde. Ich bekomme es, dass es nicht den Zustand der Verbindung überprüft, aber gibt es irgendeine Art von Timer oder periodische Bereinigung, konfigurierbar oder fest codiert?
Sie müssen die Verbindung in PHP von Zeit zu Zeit manuell anpingen, wenn Sie eine funktionierende Verbindung zu Ihrer Datenbank aufrechterhalten möchten. Die Zeit, in der MySQL die inaktive Verbindung schließt, kann in der MySQL-Konfiguration geändert werden –
was ist mit einer bestimmten Fehlermeldung, die Sie bekommen? –
@YourCommonSense Der Fehler, den ich bekomme, wenn ich versuche, eine Verbindung zu verwenden, die geschlossen wurde, ist etwas wie "MySQL Server war weg". – obe