Ich könnte leicht vorschlagen, die InnoDB-Einstellungen zu ändern, was ein wenig umständlich sein könnte, nur um einen mysqldump zum Laufen zu bringen. Sie mögen vielleicht nicht, was ich über den Vorschlag bin, aber ich glaube, es ist Ihre beste (einzige) Option. Hier kommt's:
VORSCHLAG 1: Deaktivieren Sie erweiterte Einfügungen
Die Standardeinstellung für mysqldump würde das Zusammenfassen von Hunderten oder Tausenden von Zeilen in einem einzigen INSERT beinhalten. Dies wird als erweitertes INSERT bezeichnet. Es kommt zu einem Überlauf, der über das max_allowed_packet hinausgeht .
Ich beantwortete einen Beitrag wieder am Sep 01, 2011
(der MySQL-Server hat den Import von großen Dumps behindert ), wo ich das Gleiche für den Import eines großen mysqldump besprochen habe. Ich glaube, dass das Deaktivieren von Extended INSERT auch beim Erstellen eines problematischen mysqldump helfen würde.
mysqldump -u root --skip-extended-insert -p maia > maia.sql
Schlechte Nachrichten: Was dies bewirkt, ist das Erstellen eines INSERT-Befehls für jede Zeile. Dies wird definitiv die Zeit verlängern, die benötigt wird, um den mysqldump auszuführen. Folglich wird es auch länger dauern, bis das Nachladen abgeschlossen ist (wahrscheinlich um den Faktor 10-100).
Ich habe skip-extended-insert
vorher diskutiert
VORSCHLAG 2: Binärdaten als Hex (OPTIONAL) ausgeben
Um die Binärdaten des mysqldump portabler zu machen, speichern Sie diese Daten hexadezimal
mysqldump -u root --skip-extended-insert --hex-blob -p maia > maia.sql
Schlechte Nachrichten: Es wird den mysqldump ein bisschen mehr aufblähen
VERSUCHE ES !!!
Randnotiz : Die maximale Größe von max_allowed_packet beträgt 1 GB