519 Stimmen

MySQL-Fehler 1153 - Es wurde ein Paket empfangen, das größer ist als 'max_allowed_packet' bytes

Ich importiere einen MySQL-Dump und erhalte den folgenden Fehler.

$ mysql foo < foo.sql 
ERROR 1153 (08S01) at line 96: Got a packet bigger than 'max_allowed_packet' bytes

Offenbar gibt es Anhänge in der Datenbank, was zu sehr großen Einfügungen führt.


Dies geschieht auf meinem lokalen Rechner, einem Mac, auf dem MySQL 5 aus dem MySQL-Paket installiert ist.

Wo kann ich ändern max_allowed_packet um den Speicherauszug importieren zu können?

Gibt es noch etwas, das ich einstellen sollte?

Einfach laufen mysql --max_allowed_packet=32M … führte zu demselben Fehler.

0 Stimmen

3 Stimmen

@Muleskinner, diese Frage wurde 3 Jahre vor der von Ihnen erwähnten Frage gestellt, und ich weise 4 Jahre nach Ihrem Kommentar darauf hin :p

2 Stimmen

Webyog.com Link ist defekt: 404

16voto

Amirtha Rajan Punkte 566

Versuchen Sie, in etc/my.cnf die Werte für max_allowed _packet und net_buffer_length auf

max_allowed_packet=100000000
net_buffer_length=1000000 

Wenn dies nicht funktioniert, versuchen Sie, zu

max_allowed_packet=100M
net_buffer_length=100K

7voto

Unter CENTOS 6 /etc/my.cnf lautet die korrekte Syntax im Abschnitt [mysqld]:

[mysqld]
# added to avoid err "Got a packet bigger than 'max_allowed_packet' bytes"
#
net_buffer_length=1000000 
max_allowed_packet=1000000000
#

6voto

Ali Raza Khan Punkte 31

Ich habe mein Problem durch diese Abfrage gelöst

SET GLOBAL max_allowed_packet=1073741824;

und prüfen Sie max_allowed_packet mit dieser Abfrage

SHOW VARIABLES LIKE 'max_allowed_packet';

5voto

Tomasz Tybulewicz Punkte 8117

Verwenden Sie eine max_allowed_packet Variable, die einen Befehl wie

mysql --max_allowed_packet=32M -u root -p database < dump.sql

5voto

jplindstrom Punkte 944

Das hat zwar nichts mit Ihrem Problem zu tun, aber hier ist eine Frage an Google.

Wenn Sie das SQL nicht mit mysqldump abgespeichert haben, könnte es sein, dass Ihr SQL fehlerhaft ist.

Ich habe gerade diesen Fehler durch versehentlich eine nicht geschlossene String-Literal in meinem Code. Schlampige Finger passieren.

Das ist eine phantastische Fehlermeldung für eine durchgebrannte Zeichenkette, danke dafür, MySQL!

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X