Wie zum Extrahieren von einer Tabelle von DMP

May 2

MySQL-Dump-Dateien dienen als backup-Dateien für große Datenbankstrukturen. Diese Dateien enthalten die Daten für Datenbank-Organisation, so dass Administratoren Datenbanken zu früheren Staaten wiederherstellen können, sollte etwas schief gehen. Aber Datenbanken können große, so Dump-Dateien können einfach so groß. Aktualisierung einer einzelnen Tabelle, kann statt der gesamten Datenbank, eine lästige Pflicht werden. Jedoch können mit einigen Linux-Skript-Befehle oder eine Sicherung der Datenbank, eine Speicherabbilddatei Sie selektiv die Wiederherstellung der Datenbank verwalten.

Anweisungen

Linux-Shell

1 Öffnen Sie einen terminal-Befehl durch Klicken auf das Symbol "Start Menü", dann wählen Sie Dienstprogramme von Terminal gefolgt.

2 Navigieren Sie zum Verzeichnis der Speicherabbilddatei im Terminal:

$> cd /directory/of/dumpfile.sql

3 Extrahieren Sie die Tabelle aus der SQL-Dump-Datei mit dem Linux-Awk-Befehl, und legen Sie sie in eine andere Datei. Um die Tabelle ziehen müssen Sie suchen irgend ein Bezeichner für die Tabelle so dass Awk ihn finden kann. In diesem Beispiel ist die Tabelle umgeben von Kommentaren, die sagen "Befehl für Tablename 1" und "Befehl für Tablename 2." Sie können die Tabelle in der Hauptdatenbank mit diesem Befehl Zurücksetzen:

$> Awk ' / Befehl für Tablename 1 /, / Befehl für tablename2 / {print}' dumpfile.sql > /tmp/singe_table.sql

Sicherung der Datenbank

4 Erstellen Sie eine Sicherung der Datenbank auf den SQL-Befehl:

MySQL > Erstellen von Datenbank-bu

5 Laden Sie die Sicherungsdatenbank aus der Dump-Datei:

$ Mysql -u Benutzer - pPaßwort Fakedb < dumpfile.sql

6 Wählen Sie die Sicherung der Datenbank die Daten der Tabelle, und schreiben Sie es in eine Sicherungsdatei:

MySQL > select * von Targettable in die Ausgabedatei "/ tmp/backup.bak";

7 Laden Sie die Daten der Tabelle in der Produktions-Server:

MySQL > Löschen aus Oldtable;MySQL > load Data Infile "/ tmp/mytablebackup.bak" in Tabelle Oldtable;