PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : MySQL Fehler


pogo
06.01.2004, 12:56
http://www.mysql.de/doc/de/Gone_away.html
http://www.mysql.de/doc/de/Common_errors.html
http://www.mysql.de/doc/de/Server_parameters.html
http://www.mysql.de/doc/de/Option_files.html
http://www.mysql.de/doc/de/SHOW_VARIABLES.html

Die häufigsten Gründe für den "MySQL server has gone away" und "Lost connection to server during query" Fehler

1. Der häufigste Grund für den MySQL server has gone away-Fehler ist eine Zeitüberschreitung, nach der der Server die Verbindung schloss. Vorgabemäßig schließt der Server die Verbindung nach 8 Stunden, wenn nichts passiert ist. Sie können diesen Wert mit der wait_timeout-Variablen (http://www.mysql.de/doc/de/SHOW_VARIABLES.html) in /etc/my.cnf (http://www.mysql.de/doc/de/Option_files.html) ändern, die beim Start von mysqld gesetzt wird.

2. Ein weiterer häufiger Grund für den MySQL server has gone away-Fehler ist das Absetzen eines ``close'' auf Ihre MySQL-Verbindung mit dem anschließenden Versuch, auf der geschlossenen Verbindung eine Anfrage abzusetzen. Sie können überprüfen, ob der MySQL-Server gestorben ist, indem Sie mysqladmin version ausführen und die Uptime untersuchen.

Um die Uptime zu überprüfen, melden Sie sich als Root in der Shell an und geben Sie folgendes ein:

mysqladmin -u root -p version

3. Wenn ein MySQL-Client oder der mysqld-Server ein Paket erhält, das größer als max_allowed_packet Bytes ist, gibt er einen Packet too large-Fehler aus und schließt die Verbindung. Bei einigen Clients kann es auch zu einem "Lost connection to MySQL server during query"-Fehler kommen, wenn das Kommunikationspaket zu groß war. Sie können eine Kommandozeilenoption für mysqld benutzen, um max_allowed_packet auf eine höhere Größe zu setzen. Wenn Sie zum Beispiel beabsichtigen, die volle Länge eines BLOB in eine Tabelle zu speichern, müssen Sie den Server mit der --set-variable=max_allowed_packet=16M-Option starten. Diese Variable kann auch in /etc/my.cnf (http://www.mysql.de/doc/de/Option_files.html) gesetzt werden. Zusätzlicher Speicher wird nur dann alloziiert, wenn er durch ein großes Query oder einen großen Rückgabewert angefordert wird.

4. Ihr Provider hat mysql neu gestartet... Kontaktieren Sie am besten Ihren Provider