Dump von Datenbanken mit einem bestimmten Präfix

Gerade bei sehr großen MySQL-Installationen fallen Backup bzw. Dump-Prozesse etwas feingranularer aus, da nicht immer alle Datenbanken gesichert werden sollen. Um zum Beispiel nur Datenbanken mit einem bestimmten Präfix zu dumpen bzw. zu sichern, kann das folgende Bash-Skript verwendet werden:

bash# mysql -Bse "show databases like 'prefix%'" -u root -p INFORMATION_SCHEMA > /tmp/databases
bash# mysqldump -u root -p --databases `cat /tmp/databases` > /tmp/dump.sql
bash# rm /tmp/databases

In der ersten Zeile wird durch -e der darauffolgende Ausdruck ausgeführt und alle Datenbanken, die mit dem Wort „prefix“ beginnen, ausgegeben. Die Option -B und -s sorgen dafür, dass nur die Datenbanknamen ausgegeben werden und keine Tabellenformatierung bzw. Spaltennamen erscheinen. Das Ergebnis „pipen“ wir in eine Datei, die wir nun in der nächsten Zeile bei der Übergabe der zu sichernden Datenbanken angeben. Die resultierende Backupdatei dump.sql enthält anschließend alle Daten der Datenbanken, die mit dem Wort „prefix“ beginnen.

Schreibe einen Kommentar