MySQL Dump ohne Locking von Tabellen
So können Sie ein Backup einer MySQL-Datenbank während des Betriebs der Datenbank erstellen.
Wenn man von sehr großen Datenbanken zur Laufzeit ein Backup machen möchte, hat man das Problem, dass MySQL eigentlich einen sogenannten Lock (also eine Sperre) auf die Tabellen setzt. Dadurch wird zum einen verhindert, dass unkonsistente Daten enstehen, zum anderen aber eben auch, dass überhaupt mit der MySQL-Datenbank und den Tabellen gearbeitet werden kann.
Am einfachsten geht ein Backup mit der --opt
Option. Dabei werden automatisch eine wichtige Parameter wie extented Inserts u.a. gesetzt. Dummerweise eben aber auch --lock-tables
. Um das ganze zu umgehen, kann man einfach die Option --skip-lock-tables
hinzufügen. Dadurch wird es möglich ohne eine Störung während des Betriebs ein Dump einer MySQL-Datenbank zu machen.
Hier nochmal der komplette Syntax:
mysqldump --opt --skip-lock-tables -uUSERNAME -pPASSWORD DATABASE > FILE
Wobei die Wörter in Großbuchstaben durch die entsprechenden Daten ersetzt werden müssen.
Mitdiskutieren