MySQL Server ist nicht mehr verfügbar – genau in 60 Sekunden
In diesem Szenario tritt bei einer MySQL-Abfrage, die zuvor erfolgreich ausgeführt wurde, jetzt ein Fehler auf Zeitüberschreitung nach 60 Sekunden, Anzeige der Fehlermeldung „MySQL-Server ist verschwunden.“ Das Problem besteht weiterhin, obwohl die Variable „wait_timeout“ angepasst wurde.
Analyse:
Die Tatsache, dass die Zeitüberschreitung genau bei 60 Sekunden auftritt, deutet eher auf eine Einstellung als auf begrenzte Ressourcen hin ist die Ursache. Dies wird durch die Beobachtung gestützt, dass die Ausführung derselben Abfrage direkt von einem MySQL-Client erfolgreich ist.
Lösung:
Die Hauptursache des Problems ist die PHP-Option mysql.connect_timeout. Diese Option bestimmt die Zeit, die der PHP-Client auf die erste Antwort vom MySQL-Server wartet, nicht nur das Verbindungszeitlimit.
Um das Problem zu beheben, erhöhen Sie den Wert von mysql.connect_timeout wie folgt:
ini_set('mysql.connect_timeout', 300);
ini_set('default_socket_timeout', 300);
Erläuterung:
Durch Erhöhen des Werts von mysql.connect_timeout verlängern Sie die Zeit, die PHP auf die erste Antwort des Servers wartet, sodass die Abfrage innerhalb von 60 Minuten vollständig ausgeführt werden kann -zweites Fenster.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3