MySQL-Dumps einspielen: Abbrüche reduzieren

Szenario: Ein MySQL-Dump wurde erstellt (mysqldump -u user -p -h host -P Port –opt  > dump.sql), und soll jetzt wieder in eine Datenbank eingespielt werden.

Problem: Der Dump bricht mit Syntax-Fehler ab.

Mögliche Ursache: Durch –opt “optimiert” MySQL den Dump an diversen stellen auf verschiedene Arten. Unter anderem wird nicht für jeden Datensatz ein INSERT-Statement erstellt, sondern viele zu einem Statement zusammengefasst. Das INSERT-Statement wird dadurch u.U. sehr lang und kann beim Wiedereinspielen zu besagtem Abbruch führen.

Problembehebung: Durch den zusätzlichen Parameter –extended-insert=FALSE beim Dump (also: mysqldump -u user -p -h host -P Port –opt –extended-insert=FALSE DB-Name > database.sql) wird für jeden Datensatz ein INSERT-Statement erzeugt. Das Einspielen kann durchlaufen, ist aber weniger performant.

Autor

Karsten Krohn ist über 10 Jahre PHP-Entwickler mit starker Affinität zu Triathlon und Fotografie. Auf krohnmedia.de schreibt er über Web-Entwicklung und Triathlon und zeigt das eine oder andere Foto.
Karsten ist auch bei Twitter und Google+ zu finden.

Kommentieren

Deine E-Mail Adresse wird nicht veröffentlicht. Pflichtfelder sind mit * gekennzeichnet.

Diese HTML Tags und Attribute sind erlaubt:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

…und sonst?

Nächste Wettkämpfe

  • 14.04.2012:
    Duathlon Scheeßel
  • 29.04.2012:
    Hamburg Marathon
  • 03.06.2012:
    Wasserstadt Limmer (MD)
  • 24.06.2012:
    Seepark Triathlon Bad Bodenteich
  • 11.08.2012:
    Glücksburger Förde-Crossing