WordPress Website: Cronjobs für automatisches Backup

Wer einen WordPress-Blog oder eine Website betreibt muss zwingend regelmäßig ein Backup anlegen. Menschliches oder technisches Versagen können ansonsten innerhalb weniger Sekunden die Arbeit der letzten Jahre unwiederbringlich vernichten. Dabei gibt es zahlreiche Optionen für ein Backup.

Wie du ein WordPress Backup erstellen kannst, habe ich in einem früheren Blog-Beitrag beschrieben. Auch wie du eine WordPress Datenbank sichern und wiederherstellen kannst, findest du hier auf RandomBrick.de. Wenn du jedoch keine Lust auf manuelle Backups oder zusätzliche Plugins hast oder eben keinen WordPress-Blog betreibst, kann auch ein Cronjob ein Backup deiner Website erstellen.

WordPress Website: Cronjobs für automatisches Backup

Viele Webhoster bieten zudem optional ein tägliches oder wöchentliches Backup als kostenloses oder kostenpflichtigen Zusatz an. Unabhängig davon ist es die beste Vorgehensweise, ein zweites Backup-System einzurichten, das mehrere Kopien deiner Datenbank (falls zutreffend) und Dateien aufbewahrt.

Dafür kannst du Cronjobs verwenden. Diese richtest du ebenfalls bei deinem Webhoster ein. Die Option für Cronjobs ist zwischenzeitlich selbst in den meisten günstigen Hosting-Pakete enthalten.

Hinweis: Die Cron-Umgebung ist anders als die SSH-Umgebung und „#“ / „%“ Zeichen werden als Kommentarzeichen interpretiert. Um diese Angelegenheit zu lösen, musst du vor jedes „%“ einen Backslash „\“ setzen.

Cronjob für Backup der Dateien

Der erste Cronjob erstellt eine Tar Gzip-Datei mit dem aktuellen Datum und der Uhrzeit im Dateinahmen. Diese Datei wird in einem Ordner mit dem Namen „DATEIEN-Backup“ gespeichert.

  1. Erstelle einen Ordner (NICHT im Ordner public_html oder www), um die Backup-Dateien zu speichern. Stelle sicher, dass der Ordner eine Ebene höher liegt als der Web-Ordner.
    Für dieses Beispiel habe ich einen Ordner mit dem Namen „DATEIEN-Backup“ erstellt.
  2. Erstelle jetzt den Cronjob in deinem Admin-Menü bei deinem Webhoster und wähle das Intervall aus. Bevor du dich auf den Cronjob verlässt, teste diesen und überprüfe die erstellte Dabei. Sind alle Dateien enthalten?

Mit diesem Befehl werden alle Dateien im Ordner „public_html“ gezippt und ein Archiv im Ordner „FILES-backup“ mit dem heutigen Datum und der heutigen Uhrzeit erstellt.

tar -zcf DATEIEN-Backup/"$(date '+\%m-\%d-\%y').tar.gz" public_html

Cronjob für Backup der Datenbank

Der zweite Cronjob erstellt eine SQL-Datei mit dem aktuellen Datum und der Uhrzeit im Dateinahmen. Diese Datei wird in einem Ordner mit dem Namen „DB-Backups“ gespeichert.

  1. Erstelle einen Ordner (NICHT im Ordner public_html oder www), um die Backup-Datenbank zu speichern. Stelle sicher, dass der Ordner eine Ebene höher liegt als der Web-Ordner.
    Für dieses Beispiel habe ich einen Ordner mit dem Namen „DB-Backups“ erstellt.
  2. Erstelle jetzt den Cronjob in deinem Admin-Menü bei deinem Webhoster und wähle das Intervall aus. Bevor du dich auf den Cronjob verlässt, teste diesen und überprüfe die erstellte SQL-Datei.

Mit diesem Befehl wird eine MYSQL-Datenbank im Ordner „DB-Backup“ mit dem heutigen Datum / Uhrzeit ausgegeben.

mysqldump -u DB_USER -pDB_PASSWORD DB_NAME > DB-backups/$(date +\%m-\%d-\%Y-\%H.\%M.\%S)-DB_NAME-db.sql

Den Cronjob oben musst du wie folgt anpassen:

  • DB_USER = MySQL Benutzername
  • DB_PASSWORD = MySQL Datenbank Passwort (entfernte nicht das „-p“ davor)
  • DB_NAME = MySQL Name der Datenbank
  • DB_NAME-db = dein gewünschte Speichername der .sql-Datei

Bei WordPress findest du diese Informationen in der wp-config.php.

Persönliche Meinung zu Cronjobs für automatisches Backup einrichten

Backups sind Pflicht. Egal wie. Wenn du ein Plugin für WordPress verwendest, kann sich dieses auch immer negativ auf die Performance deiner Seite auswirken. Zudem benötigst du das Plugin, um dein Backup wiederherzustellen. Ein Cronjob funktioniert automatisiert im Hintergrund und losgelöst von einem Plugin. Ein Cronjob sichert dir unverändert alle Daten. Dafür musst du diesen einrichten und du solltest nicht vergessen, alte Backups hin und wieder zu löschen. Sonst ist bald der Webspace voll.

Kommentar verfassen

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.