Wie lösche ich eine Tabelle aus einem mysqldump
Wie lösche ich die Ausgabe für eine große Tabelle in einem mysqldump mit vielen Tabellen?
Ich habe einen dump einer Datenbank von 6 GB groß ist, aber zu 90% ist es nur eine logging-Tabelle "cache_entries", dass ich nicht mehr in meinem backup.
Wie kann ich ganz leicht entfernen, die wenig in den dump, das beschreibt den großen logging-Tabelle?
Fand ich dies:
http://gtowey.blogspot.de/2009/11/restore-single-table-from-mysqldump.html
Beispiel:
grep -n 'Table structure' dump.sql
dann zum Beispiel:
sed -n '40,61 p' dump.sql > t2.sql
Aber wie kann ich das ändern, dass für meine Bedürfnisse?
- Warum auch, die Tabelle in der ersten dump? Es scheint, wie die API für mysqldump sollte es Ihnen ermöglichen, nur um einen dump der Tabellen, die Sie interessieren dev.mysql.com/doc/refman/5.1/en/mysqldump.html
- Ich nicht, dass wahnsinnig backup 😉
Du musst angemeldet sein, um einen Kommentar abzugeben.
Könnten Sie 'n', n d " zum löschen von bestimmten Zeilen.
Ich denke, in Ihrem Fall, Sie wollen, um die Tabelle in Frage, wollen aber nicht die Daten?
Ändern Sie den Befehl "grep" durch "Dumping data for table":
Nun, wenn Sie nicht wollen, dass die Daten für den t2, den Sie verwenden könnten:
Fand ich dieses bash-Skript, das spaltet einen dump von einer Datenbank in eine separate eingereicht für jede Tabelle, mit
csplit
(das teilt eine Datei in einzelne Abschnitte bestimmt durch Kontext-Linien):Quelle: gist.github.com/1608062
und ein bisschen verbessert:
Wie kann ich Spalten die Ausgabe von mysqldump in kleinere Dateien?
einmal, haben Sie separate Dateien für jede Tabelle können Sie löschen Sie die unerwünschten Tabellen und kleben Sie zusammen, wenn nötig mit
cat table* >glued_sqldump.sql
müssen Sie die create table-Anweisung auf Ihrem Tisch, und die nächste Anweisung create table. sagen, Sie sind n1 und n2.
dann können Sie einfach löschen Sie mit sed wie oben. sed 'n1,n2d' dump.sql - > neue.sql
können Sie einfach grep erstellen Tabelle, und beachten Sie die Zeilennummern für Ihre prework.
hier ist eine demo.