So beheben Sie die MySQL Lost Connection

So beheben Sie die MySQL Lost Connection
In einigen Fällen, wenn Sie mit MySQL -Datenbanken arbeiten, können Sie auf den Fehler „Fehler 2013: Verlorene Verbindung zum MySQL -Server während der Abfrage“ stoßen. Obwohl dies frustrierend sein kann, wenn es passiert, gibt es relativ einfacher Grund, warum es passiert und wie Sie es beheben können.

Was verursacht "verlorene Verbindung zum MySQL -Server während der Abfrage" Fehler?

Dieser Fehlertyp tritt auf, wenn die Verbindung zwischen einem Client und dem Server den angegebenen Zeitlimitwert überschreitet.

Wenn Sie beispielsweise eine lange Abfrage haben, die die Ausführung lange dauert, lässt MySQL die Verbindung zum Server fallen.

Nehmen wir zum Beispiel beim Exportieren einer großen Datenbank, abhängig von der Exportmethode und den zu exportierenden Daten, eine lange Zeit dauern, bis dieser Vorgang abgeschlossen ist. Um die Probleme auf dem Server zu verhindern, kann MySQL diese Verbindung vor dem Abschluss des Vorgangs beenden.

Eine weitere häufige Ursache für diese Art von Fehler ist der komplexe Join -Operationen.

MySQL Show Timeout Value

Wie bereits erwähnt, können Sie diesen Fehlertyp beheben, indem Sie einfach die Zeitüberschreitungsdauer auf der Serverseite erhöhen.

Die Zeitüberschreitungswerte werden in den Variablen wait_timeout und interactive_timeout gespeichert. Wir können die aktuellen Werte abrufen, wie in den folgenden Abfragen gezeigt:

MySQL> Globale Variablen wie 'interactive_timeout' anzeigen;

Die resultierende Ausgabe ist wie folgt:

+---------------------+-------+
| Variable_name | Wert |
+---------------------+-------+
| Interactive_timeout | 28800 |
+---------------------+-------+
1 Zeile in Set (0.00 Sek.)

Das angegebene Ergebnis zeigt den Standardwert der Variablen interactive_timeout. Dieser Wert definiert die Dauer in Sekunden, dass der Server auf einer aktiven Sitzung auf eine Aktivität wartet.

Wir können auch den Wert von Wait_Timeout -Variable als:

MySQL> Globale Variablen wie 'Wait_timeout' anzeigen;

Resultierende Tabelle:

+---------------+-------+
| Variable_name | Wert |
+---------------+-------+
| wait_timeout | 28800 |
+---------------+-------+
1 Zeile in Set (0.01 Sek.)

Diese Variable legt die Dauer fest, dass der MySQL-Server in einer nicht interaktiven Sitzung auf eine Aktivität wartet.

Beheben Sie MySQL Lost Verbindungsfehler durch Aktualisierung der Zeitüberschreitungsvariablen

Um diesen Fehlertyp zu beheben, können wir die Werte der beiden zuvor diskutierten Variablen aktualisieren. Wir können die Abfrage wie im Folgenden gezeigt ausführen:

MySQL> set @@ Global.interActive_timeout = 43200;
Abfrage OK, 0 Zeilen betroffen (0.00 Sek.)

Der vorherige Befehl sollte den Wert der Variablen interactive_timeout auf 43200 Sekunden aktualisieren.

Um den Parameter wait_timeout zu aktualisieren, führen Sie den folgenden Befehl aus:

MySQL> set @@ Global.wait_timeout = 43200;
Abfrage OK, 0 Zeilen betroffen (0.00 Sek.)

Du bist fertig. Sie können versuchen, Ihre zeitgesteuerte Abfrage erneut zu beenden.

Abschluss

In diesem Beitrag haben wir die Ursache des Verbindungsverlusts bei der Arbeit mit MySQL und den Schritten besprochen, die Sie ausführen können, um sie zu beheben. Beachten Sie jedoch Ihre Fragen oder unterscheiden Sie sie in effiziente Blöcke.

Danke fürs Lesen und glücklicher Codierung!