Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Führen Sie mehrere .sql-Tabellen-Dump-Dateien in einer einzigen Datei zusammen

Dafür gibt es keine Spezialwerkzeuge. Sie können die Dateien einfach verketten:

$ cat b1.sql b2.sql b3.sql > b_all.sql

Abgesehen davon, dass der typische Inhalt dieser .sql-Dateien eine DROP TABLE, dann eine CREATE TABLE und dann viele INSERT-Anweisungen ist. Wenn jede der einzelnen Dump-Dateien so formatiert ist und Sie sie nacheinander wiederherstellen, wird jede TABLE DROP und die von der vorherigen Datei importierten Daten löschen.

Sie können eine Speicherauszugsdatei ohne die DROP/CREATE-Anweisungen erstellen:

$ mysqldump --no-create-info <database> <table> ...

Aber wenn Sie die Dump-Dateien bereits haben (sie können sie nicht erneut sichern) und Sie die DROP/CREATE-Anweisungen in allen außer der ersten Datei loswerden wollen:

$ ( cat b1.sql ; cat b2.sql b3.sql | sed -e '/^DROP TABLE/,/^-- Dumping data/d' ) > b_all.sql