Backup und Wiederherstellung · 3 min read · Feb 12, 2026

MySQL Backup und Wiederherstellung mit mysql-zrm auf Debian Sarge - Seite 3

4 Backup-Beispiele

Mit mysql-zrm können Sie mehrere Backups verwalten, die als Backup-Sets bezeichnet werden, z. B. ein tägliches Backup, ein wöchentliches Backup, ein Backup für Ihre osCommerce-Datenbank, ein Backup für Ihre vBulletin-Datenbank usw.

Jetzt erstellen wir unser erstes Backup, das wir im Backup-Set dailyrun erstellen:

mysql-zrm-scheduler --now --backup-set dailyrun --backup-level 0

Dies wird sofort alle Datenbanken in das Verzeichnis /var/lib/mysql-zrm/dailyrun sichern, und es wird auch das Verzeichnis /etc/mysql-zrm/dailyrun erstellen. –backup-level 0 bedeutet: ein vollständiges Backup durchführen (Sie können auch inkrementelle Backups durchführen (–backup-level 1), aber dazu sage ich später noch etwas - vorerst führen wir nur vollständige Backups durch).

Wenn Sie E-Mail-Benachrichtigungen aktiviert haben, sollten Sie jetzt eine E-Mail mit dem Status des Backups erhalten haben. Aber Sie können auch einen Bericht über den Backup-Status auf der Kommandozeile wie folgt generieren:

mysql-zrm-reporter --where backup-set=dailyrun --show backup-status-info

Die Ausgabe sieht wie folgt aus:

| backup_set backup_date backup_level backup_status comment ---------------------------------------------------------------------------------------------------------------------- dailyrun Tue 26 Sep 2006 07:57:47 PM CEST 0 Backup succeeded ---- |

Sie können auch einige andere Berichte mit den folgenden Befehlen generieren:

mysql-zrm-reporter --where backup-set=dailyrun --show backup-method-info  
mysql-zrm-reporter --where backup-set=dailyrun --show backup-retention-info  
mysql-zrm-reporter --where backup-set=dailyrun --show backup-performance-info  
mysql-zrm-reporter --where backup-set=dailyrun --show restore-full-info  
mysql-zrm-reporter --where backup-set=dailyrun --show restore-incr-info  
mysql-zrm-reporter --where backup-set=dailyrun --show replication-info

Versuchen Sie jeden von ihnen, um zu sehen, welche Informationen sie bereitstellen.

Jetzt wollen wir ein tägliches und ein wöchentliches Backup erstellen, das automatisch vom System ausgeführt wird (d. h. ohne unser Eingreifen). So können wir diese Backups einrichten:

mysql-zrm-scheduler --add --interval daily --backup-set dailyrun --backup-level 0  
mysql-zrm-scheduler --add --interval weekly --backup-set weeklyrun --backup-level 0

(Mit dem zweiten Befehl haben wir ein neues Backup-Set namens weeklyrun erstellt.)

Jetzt überprüfen wir unsere geplanten Backups:

mysql-zrm-scheduler --query

Die Ausgabe sieht wie folgt aus:

| Logging to /var/log/mysql-zrm/mysql-zrm-scheduler.log 0 3 * * * /usr/bin/mysql-zrm --action backup --destination /var/lib/mysql-zrm --backup-set dailyrun --backup-level 0 0 4 * * * /usr/bin/mysql-zrm --action purge --destination /var/lib/mysql-zrm 0 2 * * 0 /usr/bin/mysql-zrm --action backup --destination /var/lib/mysql-zrm --backup-set weeklyrun --backup-level 0 |

Wie Sie sehen können, wird das tägliche Backup jeden Tag um 03:00 Uhr ausgeführt, und das wöchentliche Backup wird jeden Sonntag um 02:00 Uhr ausgeführt.

(Übrigens, anstelle von

mysql-zrm-scheduler --query

könnten Sie auch

crontab -l

ausführen, um die gleichen Informationen zu erhalten.)

Wenn Sie das tägliche Backup zu einer anderen Zeit starten möchten, z. B. um 13:35 Uhr, können Sie es so machen:

mysql-zrm-scheduler --add --interval daily --backup-set dailyrun --start 13:35 --backup-level 0

Um ein geplantes Backup aus cron zu entfernen, können Sie es so machen:

mysql-zrm-scheduler --delete --interval weekly

Dies würde das wöchentliche Backup, das sonntags um 02:00 Uhr ausgeführt wird, aus cron entfernen. Wenn Sie das tägliche Backup, das für 13:35 Uhr geplant ist, entfernen möchten, können Sie es so machen:

mysql-zrm-scheduler --delete --interval daily --start 13:35

Aber Sie können auch

crontab -e

ausführen, um Ihre Cron-Jobs zu bearbeiten, was manchmal einfacher ist, als sich mit mysql-zrm-scheduler zu beschäftigen.

5 Anpassbare Berichte, HTML-Berichte

Im Kapitel 4 habe ich bereits erwähnt, welche Art von Berichten verfügbar sind. Aber Sie können auch anpassbare Berichte generieren, d. h. Sie können angeben, welche Spalten/Informationen Sie sehen möchten. Zum Beispiel,

mysql-zrm-reporter --fields backup-set,backup-date,backup-level,backup-status --where backup-set=dailyrun

generiert einen Bericht für das Backup-Set dailyrun, der die Spalten backup-set, backup-date, backup-level und backup-status anzeigt:

| backup_set backup_date backup_level backup_status ------------------------------------------------------------------------------------------------ dailyrun Tue 26 Sep 2006 07:57:47 PM CEST 0 Backup succeeded dailyrun Tue 26 Sep 2006 07:58:08 PM CEST 0 Backup succeeded dailyrun Tue 26 Sep 2006 07:58:31 PM CEST 0 Backup succeeded dailyrun Tue 26 Sep 2006 08:24:04 PM CEST 0 Backup succeeded |

Eine Liste aller Spalten ist verfügbar unter http://mysqlbackup.zmanda.com/index.php/What_information_can_be_obtained_from_a_backup_report%3F.

mysql-zrm ermöglicht es Ihnen auch, HTML-Berichte zu erstellen. Angenommen, Sie haben einen Webserver (z. B. Apache) auf Ihrem System mit dem Dokumentenstamm /var/www installiert. Führen Sie jetzt aus

mysql-zrm-reporter --show backup-status-info --where backup-set=dailyrun --type html --output /var/www/backup-status-dailyrun.html

Dies erstellt die HTML-Datei backup-status-dailyrun.html in Ihrem /var/www-Verzeichnis, auf die Sie jetzt in Ihrem Browser zugreifen können (z. B. http://server1.example.com/backup-status-dailyrun.html):

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.