Tom: Datenbankdump herstellen

Beitrag lesen

Hello Enzo,

also ich arbeite mit MySQL 5.0.45 und würde die Wiederherstellung gerne mit der Konsole machen.

»» Ich versuche einen Datenbankdump (MySQL) auf einem WAMPP-System herzustellen. Mit dem Programm "bigdump" klappt es nicht . Kann mir irgend jemand weiterhelfen?

http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html

Ok, aber vor de Wiederherstellung steht ja die Sicherung.
Zur Sicherung gibt es unterschiedliche Möglichkeiten:

Bei Verwendung von MySQL-Datenbank-Systemen, die ausschließlich in MyISAM angelegt wurden, kann man einfach den Server stoppen (also ordnungsgemäß herunterfahren) und die gesamten Tabellen des Datenbankservers ganz normal kopieren.

Das sind dann aber mindestens die MySQL-eigene mysql-Datenbank und Deine Nutzdatenban(en). Nur die (oder nur eine der) Nutzdatenbank(en) hätte keinen Sinn, weil die Rechte dann fehlen würden.

Es handelt sich also um das _gesamte_ data-Verzeichnis (das ist der Default-Name) des Servers.

-> C:\Programme\xampp\mysql\data

Zum Wiederherstellen brauchst Du dann nur das Verzeichnis komplett wiedereinzuspielen und den Server anschließend zu starten.

Der Nachteil an dieser Methode ist, dass man den Datenbankserver nur komplett wiederherstellen kann und nicht einzelne Tabellen oder Datenbanken aus dem Paket auf demselben oder auch einem anderen Server einspielen kann damit.

Wenn man nun echte (My-)SQL-Dumps erzeugt, dann stehen in diesen, je nach gewählten Optionen, alle erforderlichen SQL-Statements drin, die notwednig sind, um die Tabelle(n) wiederherzustellen.
Es fehlen wieder nur die Rechte auf die Tabellen und die Datenbank.

Problematisch ist es, wenn Trigger gesetzt waren, die die Existenz anderer Tabellen erforderlich machen, diese aber noch nicht da sind.

Daher sollte auf jeden fall immer die gesamte Datenbank gesichert werden. Wenn man mit transaktionen arbeitet, auch die gesamte Historie. Dabei musst Du darauf achten, dass Tabellen und Historie zum selben Zeitpunkt angehalten werden.

Bevor das Sichern beginnt, ist es daher unablässig, weitere Veränderungen zu verhindern und die Buffers zu flashen.

FLUSH TABLES WITH READ LOCK

Das Tool mysqldump soll dies automatisch berücksichtigen.
Der Sicherungsprozess beginnt daher erst dann, wenn alle zum Sicherungsauftrag gehörenden Tabellen gesperrt werden konnten. Wenn da nun noch einige Applikationen beharrlich weiter versuchen, Schreibvorgänge vorzunehmen, kann es zu einem Deadlock kommen. Die Applikationen sollten daher vorher auch alle gestoppt werden.

Liebe Grüße aus dem schönen Oberharz

Tom vom Berg

--
Nur selber lernen macht schlau
http://bergpost.annerschbarrich.de