Kapitel 5: MySQL-Datenbankadministration 293
MySQL-Server). Der Dump enth¨alt SQL-Statements, um Datenbanken und Tabellen zu
erzeugen und / oder Tabellen mit Daten zu f¨ullen.
Wenn Sie eine Datensicherung auf dem Server machen, sollten Sie in Betracht ziehen, statt
dessen mysqlhotcopy zu benutzen. Siehe Abschnitt 5.8.6 [mysqlhotcopy], Seite 296.
shell> mysqldump [OPTIONS] datenbank [tabellen]
OR mysqldump [OPTIONS] --databases [OPTIONS] datenbank1 [datenbank2 datenbank3...]
OR mysqldump [OPTIONS] --all-databases [OPTIONS]
Wenn Sie keine Tabellen angeben oder --databases bzw. --all-databases benutzen,
wird die gesamte Datenbank (bzw. werden alle Datenbanken) gedumpt.
Sie erhalten eine Auflistung der Optionen, die Ihre Version von mysqldump unterst¨utzt,
indem Sie mysqldump --help eingeben.
Wenn Sie mysqldump ohne --quick oder --opt ausf¨uhren, beachten Sie, dass mysqldump
die gesamte Ergebnismenge in den Arbeitsspeicher l¨adt, bevor das Ergebnis gedumpt wird.
Das kann zu Problemen f¨uhren, wenn Sie eine große Datenbank dumpen.
Wenn Sie eine neue Version des mysqldump-Programms benutzen und einen Dump erzeugen,
der in einen sehr alten MySQL-Server eingelesen werden soll, sollten Sie die --opt- und -
e-Optionen nicht benutzen.
mysqldump unterst¨utzt folgende Optionen:
--add-locks
F¨uhrt LOCK TABLES vor und UNLOCK TABLE nach jedem Tabellen-Dump durch
(um schnelleres Einf¨ugen in MySQL zu erreichen).
--add-drop-table
Ein drop table vor jedem create-Statement hinzuf¨ugen.
-A, --all-databases
Alle Datenbanken dumpen. Das ist dasselbe wie --databases mit allen Daten-
banken ausgew¨ahlt.
-a, --all Alle MySQL-spezifischen Optionen f¨ur create benutzen.
--allow-keywords
Erzeugung von Spaltennamen zulassen, die Schl¨usselw¨orter sind. Das funktion-
iert, indem jedem Spaltenname der Tabellenname als Pr¨afix angef¨ugt wird.
-c, --complete-insert
Vollst¨andige insert-Statements benutzen (mit Spaltennamen).
-C, --compress
Alle Informationen zwischen Client und Server komprimieren, wenn bei Kom-
pression unterst¨utzen.
-B, --databases
Mehrere Datenbanken pr¨ufen. Beachten Sie den Unterschied im Gebrauch: In
diesem Fall werden keine Tabellen angegeben. Alle Namensargumente werden
als Datenbanknamen erachtet. Vor jeder Ausgabe einer neuen Datenbank wird
USE datenbank; eingef¨ugt.
--delayed
Zeilen mit dem INSERT DELAYED-Befehl einf¨ugen.
Comentarios a estos manuales