Problem: Zeitüberschreitung der MySQL-Server-Verbindung nach 60 Sekunden, Fehler „MySQL-Server ist verschwunden – in genau 60 Sekunden“
Das beschriebene Problem rührt von einer Zeitüberschreitung im Zusammenhang mit der PHP-Option mysql.connect_timeout her. Diese Option wirkt sich nicht nur auf das Verbindungszeitlimit aus, sondern auch auf die Zeit, die benötigt wird, um die erste Antwort vom MySQL-Server zu erhalten.
Ursache:
Die Option mysql.connect_timeout ist normalerweise standardmäßig auf 60 Sekunden eingestellt. Wenn ein PHP-Skript eine Abfrage ausführt, deren Ausführung auf dem MySQL-Server länger als 60 Sekunden dauert, tritt beim PHP-Skript eine Zeitüberschreitung auf und es wird der Fehler „MySQL-Server ist verschwunden“ ausgegeben.
Lösung:
Um dieses Problem zu beheben, erhöhen Sie die Option mysql.connect_timeout auf einen Wert, der größer als die erwartete Ausführungszeit Ihrer Abfrage ist. Dadurch kann das PHP-Skript länger auf eine Antwort vom Server warten, bevor es zu einer Zeitüberschreitung kommt.
Sie können die Option mysql.connect_timeout mithilfe der Funktion ini_set() in Ihrem PHP-Skript ändern:
ini_set('mysql.connect_timeout', 300); // Set to 300 seconds ini_set('default_socket_timeout', 300); // Set the socket timeout to match the connect timeout
Durch Erhöhen der Option mysql.connect_timeout verlängern Sie effektiv die Wartezeit, bis das PHP-Skript eine Antwort vom MySQL-Server erhält, und verhindern so die Fehlermeldung „MySQL-Server ist verschwunden“. Fehler.
Das obige ist der detaillierte Inhalt vonWarum kommt es nach 60 Sekunden zu einer Zeitüberschreitung meiner PHP-MySQL-Verbindung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!