Zum Hauptinhalt springen
WordPress-Backup erstellen: So sicherst du deine Website richtig

WordPress-Backup erstellen: So sicherst du deine Website richtig

·1793 Wörter·9 min

Ein WordPress-Backup gehört zu den Dingen, die man hoffentlich niemals benötigt.

Wenn man es benötigt, sollte es allerdings funktionieren.

Genau darin liegt das Problem: Viele WordPress-Nutzer wissen zwar, dass irgendwo Backups erstellt werden. Ob diese Sicherungen vollständig sind, wie lange sie aufbewahrt werden und wie sich die Website daraus wiederherstellen lässt, wurde aber nie ausprobiert.

Ein Backup ist deshalb nicht einfach eine Datei, die irgendwo herumliegt.

Eine brauchbare Backup-Strategie beantwortet drei Fragen: Was wird gesichert? Wo wird es gespeichert? Und lässt es sich tatsächlich wiederherstellen?

WordPress-Backup mit Dateien, Datenbank und externem Speicher

Ein vollständiges WordPress-Backup besteht aus den relevanten Dateien und der Datenbank. Idealerweise liegt mindestens eine Sicherung außerhalb des Webservers.

Warum überhaupt ein eigenes WordPress-Backup?
#

Bei vielen Hosting-Paketen sind automatische Backups bereits enthalten.

Das ist gut und bei der Auswahl eines Hosters für uns ein wichtiges Kriterium. Worauf wir dabei achten, erklären wir ausführlicher in WordPress-Hosting auswählen: Worauf kommt es wirklich an?.

Trotzdem sollte man verstehen, was dort eigentlich gesichert wird.

Eine Website kann aus vielen Gründen beschädigt werden:

  • fehlerhaftes WordPress-Update
  • inkompatibles Plugin
  • beschädigte Datenbank
  • versehentlich gelöschte Inhalte
  • fehlerhafte Änderungen am Theme
  • Schadsoftware
  • kompromittierter Benutzerzugang
  • Fehler beim Hosting
  • eigener Bedienfehler

Backups schützen uns dabei nicht vor dem Fehler.

Sie ermöglichen uns, auf einen Zustand vor dem Fehler zurückzugehen.

Woraus besteht eine WordPress-Website?
#

Um WordPress richtig zu sichern, müssen wir zunächst verstehen, wo die Daten liegen.

Vereinfacht besteht eine WordPress-Installation aus zwei Bereichen:

WordPress
   │
   ├── Dateien
   │
   │    ├── WordPress Core
   │    ├── Themes
   │    ├── Plugins
   │    └── Uploads
   │
   └── Datenbank
        ├── Artikel
        ├── Seiten
        ├── Benutzer
        ├── Kommentare
        ├── Einstellungen
        └── Plugin-Daten

Das ist wichtig:

Nur die Dateien zu kopieren ist kein vollständiges WordPress-Backup.

Und nur die Datenbank zu exportieren ebenfalls nicht.

Was liegt in der Datenbank?
#

Die WordPress-Datenbank enthält einen großen Teil dessen, was wir im Backend bearbeiten.

Dazu gehören unter anderem:

  • Beiträge
  • Seiten
  • Kategorien
  • Schlagwörter
  • Kommentare
  • Benutzer
  • WordPress-Einstellungen
  • viele Plugin-Einstellungen

Wenn wir einen neuen Artikel veröffentlichen, landet dessen Inhalt normalerweise in der Datenbank.

Ein Datenbank-Backup ist deshalb unverzichtbar.

Was liegt in den Dateien?
#

Die WordPress-Dateien enthalten dagegen unter anderem die installierte Software und hochgeladene Medien.

Besonders wichtig ist:

wp-content/

Darin befinden sich typischerweise:

wp-content/
├── plugins/
├── themes/
└── uploads/

Unter uploads liegen beispielsweise die Bilder, die über die WordPress-Mediathek hochgeladen wurden.

Eigene Themes, angepasste Dateien und andere individuelle Bestandteile können ebenfalls nur im Dateisystem vorhanden sein.

Bestandteile eines vollständigen WordPress-Backups

Datenbank und Dateien erfüllen unterschiedliche Aufgaben. Für eine vollständige Wiederherstellung müssen deshalb beide berücksichtigt werden.

Muss ich wirklich alle WordPress-Dateien sichern?
#

Technisch könnte man einige Bestandteile später erneut herunterladen.

Der WordPress-Core und Plugins aus dem offiziellen Repository lassen sich beispielsweise grundsätzlich wieder installieren.

In der Praxis würde ich ein normales vollständiges Backup aber nicht unnötig kompliziert machen.

Wenn genügend Speicherplatz vorhanden ist, ist eine vollständige Sicherung häufig die einfachere Lösung:

Dateien
   +
Datenbank
   =
vollständiges Backup

Bei sehr großen Websites kann man später differenziertere Strategien verwenden.

Für einen normalen Blog ist Einfachheit ein Vorteil.

Die wp-config.php nicht vergessen
#

Eine besondere Datei ist:

wp-config.php

Sie enthält zentrale Konfigurationsinformationen der WordPress-Installation, unter anderem die Datenbankverbindung.

Bei einer manuellen Installation begegnet sie uns direkt. Den Aufbau erklären wir in WordPress installieren: Manuell oder per 1-Klick-Installation?.

Diese Datei sollte gesichert werden.

Gleichzeitig enthält sie sensible Informationen und gehört deshalb nicht ungeschützt auf einen öffentlich erreichbaren Speicherplatz.

Wie oft sollte WordPress gesichert werden?
#

Das hängt davon ab, wie häufig sich die Website verändert.

Ein Blog, auf dem einmal im Monat ein Artikel erscheint, benötigt eine andere Strategie als ein Shop mit laufenden Bestellungen.

Eine einfache Frage hilft:

Wie viele Daten könnte ich im schlimmsten Fall akzeptabel verlieren?

Wenn die Antwort lautet:

höchstens einen Tag,

dann reicht ein wöchentliches Backup offensichtlich nicht.

Für einen regelmäßig gepflegten Blog kann beispielsweise eine tägliche Datenbanksicherung sinnvoll sein.

Die Dateien ändern sich unter Umständen seltener.

Eine mögliche Strategie wäre:

Datenbank
   ↓
täglich

Dateien
   ↓
wöchentlich

zusätzlich
   ↓
vor größeren Änderungen

Noch einfacher ist ein automatisches tägliches Komplett-Backup, sofern Speicherplatz und System das problemlos erlauben.

Vor Updates zusätzlich sichern
#

Ein besonders sinnvoller Zeitpunkt für ein Backup ist vor einer größeren Änderung.

Zum Beispiel:

  • WordPress-Core aktualisieren
  • wichtiges Plugin aktualisieren
  • Theme wechseln
  • PHP-Version wechseln
  • größere Konfiguration ändern
  • Datenbank bearbeiten
  • Website umziehen

Damit erhalten wir einen klaren Wiederherstellungspunkt unmittelbar vor dem Eingriff.

Ein Backup auf demselben Server ist noch keine gute Strategie
#

Stellen wir uns vor, unsere Website liegt hier:

Webserver
   ├── WordPress
   └── backups/
        └── backup.zip

Das ist besser als überhaupt keine Sicherung.

Aber wenn der komplette Server ausfällt oder der Account kompromittiert wird, können Website und Backup gleichzeitig verloren gehen.

Deshalb sollte mindestens eine Sicherung unabhängig vom produktiven System gespeichert werden.

Zum Beispiel:

WordPress-Server
      │
      ├────────► Hosting-Backup
      │
      └────────► externer Speicher

Der externe Speicher kann beispielsweise ein anderer Server, ein Cloud-Speicher oder ein lokales Speichersystem sein.

Die 3-2-1-Regel
#

Eine bekannte Backup-Grundregel lautet 3-2-1.

Die 3-2-1-Regel für WordPress-Backups

Drei Kopien, zwei unterschiedliche Speichermedien und mindestens eine Kopie außerhalb des eigentlichen Systems reduzieren das Risiko eines vollständigen Datenverlusts.

Die Idee:

3 Kopien der Daten
       │
       ▼
auf 2 unterschiedlichen
Speichersystemen
       │
       ▼
davon 1 Kopie extern

Für einen kleinen privaten Blog muss daraus keine Enterprise-Backup-Infrastruktur werden.

Das Prinzip dahinter ist trotzdem wertvoll:

Nicht alle Sicherungen am selben Ort aufbewahren.

Warum mehrere Backup-Versionen wichtig sind
#

Auch ein tägliches Backup kann wertlos sein, wenn immer nur die letzte Version aufbewahrt wird.

Nehmen wir an, ein Problem beginnt am Montag.

Wir bemerken es aber erst am Freitag.

Wenn inzwischen jeden Tag das vorherige Backup überschrieben wurde, enthält auch das aktuelle Backup möglicherweise bereits den Fehler.

Besser sind mehrere Wiederherstellungspunkte:

heute
gestern
vor 2 Tagen
vor 3 Tagen
vor 7 Tagen
vor 14 Tagen
vor 30 Tagen

Dieses Prinzip nennt man häufig Retention.

Die konkrete Aufbewahrungsstrategie hängt von Speicherplatz und Bedeutung der Website ab.

Hosting-Backup oder Backup-Plugin?
#

Beide Ansätze haben Vorteile.

Backup beim Hoster
#

Vorteile:

  • läuft unabhängig von WordPress
  • häufig bereits enthalten
  • belastet WordPress selbst kaum
  • Wiederherstellung oft direkt im Hosting-Panel

Nachteile:

  • abhängig vom Anbieter
  • Aufbewahrungsdauer möglicherweise begrenzt
  • Sicherung liegt eventuell ausschließlich beim Hoster
  • Exportmöglichkeiten unterscheiden sich

Backup über WordPress
#

Ein Backup-Plugin kann Dateien und Datenbank direkt aus WordPress heraus sichern.

Vorteile:

  • selbst konfigurierbar
  • externe Speicherziele möglich
  • unabhängig von Hosting-Funktionen
  • Sicherungen teilweise einfach herunterladbar

Nachteile:

  • zusätzliche Software
  • benötigt Ressourcen
  • kann selbst Fehler verursachen
  • muss gepflegt und aktualisiert werden

Ich würde diese beiden Varianten nicht zwangsläufig als Konkurrenz betrachten.

Ein solides Hosting-Backup plus eine unabhängige zusätzliche Sicherung kann eine sehr vernünftige Kombination sein.

Wohin mit externen Backups?
#

Mögliche Ziele sind beispielsweise:

  • eigener Computer
  • NAS
  • anderer Server
  • S3-kompatibler Object Storage
  • Cloud-Speicher
  • spezieller Backup-Dienst

Dabei sollte man bedenken, dass ein WordPress-Backup sensible Daten enthalten kann.

Datenbank und Konfiguration können beispielsweise Benutzerinformationen, E-Mail-Adressen oder Zugangsdaten enthalten.

Der Speicherort sollte deshalb entsprechend geschützt sein.

Backup-Dateien nicht öffentlich erreichbar speichern
#

Ein ausgesprochen schlechter Speicherort wäre beispielsweise:

https://meinblog.de/backups/backup.zip

Wenn eine solche Datei öffentlich heruntergeladen werden kann, hat man möglicherweise gerade einen großen Teil der Website inklusive sensibler Daten veröffentlicht.

Backup-Verzeichnisse sollten nicht über den Webserver öffentlich zugänglich sein.

Das gilt besonders für Datenbank-Dumps und Konfigurationsdateien.

Ein Backup ist erst gut, wenn der Restore funktioniert
#

Das ist der wichtigste Punkt des gesamten Artikels.

Vom Backup zur getesteten WordPress-Wiederherstellung

Erst ein erfolgreicher Restore zeigt, ob aus den gesicherten Dateien und der Datenbank tatsächlich wieder eine funktionierende WordPress-Website entsteht.

Ein Backup kann:

  • unvollständig sein
  • beschädigt sein
  • falsche Dateien enthalten
  • eine leere Datenbank enthalten
  • nicht mehr zur WordPress-Version passen
  • nicht entschlüsselt werden können
  • schlicht nicht wiederherstellbar sein

Solange wir niemals einen Restore durchgeführt haben, vermuten wir lediglich, dass unsere Sicherung funktioniert.

Wie testet man eine Wiederherstellung?
#

Ideal ist eine separate Umgebung.

Zum Beispiel:

Backup
   │
   ▼
Testsystem
   │
   ├── Dateien wiederherstellen
   ├── Datenbank importieren
   ├── Konfiguration prüfen
   │
   ▼
Website aufrufen
   │
   ▼
funktioniert?

Für einen Blog kann dafür beispielsweise eine lokale WordPress-Installation oder eine Staging-Umgebung verwendet werden.

Wir haben bereits gezeigt, wie man WordPress lokal mit Docker betreiben kann. Eine solche Umgebung eignet sich grundsätzlich auch hervorragend für technische Tests, ohne die produktive Website anzufassen.

Was sollte nach einem Restore geprüft werden?
#

Nicht nur die Startseite öffnen.

Mindestens kontrollieren würde ich:

[ ] Website erreichbar
[ ] Backend-Login funktioniert
[ ] Artikel vorhanden
[ ] Bilder vorhanden
[ ] Theme funktioniert
[ ] Plugins vorhanden
[ ] interne Links funktionieren
[ ] Formulare funktionieren
[ ] Benutzer vorhanden

Bei komplexeren Websites kommen natürlich weitere Funktionen hinzu.

Backup vor einem Website-Umzug
#

Ein vollständiges Backup ist auch die Grundlage für einen Umzug zu einem anderen Hoster.

Wenn wir besitzen:

Dateien
   +
Datenbank
   +
Konfiguration

sind wir wesentlich weniger vom aktuellen Anbieter abhängig.

Das ist einer der Gründe, warum wir beim WordPress-Hosting Wert auf Zugriffsmöglichkeiten wie SFTP und Datenbankzugriff legen.

Ein Hosting sollte uns nicht daran hindern, unsere eigene Website vollständig zu sichern und mitzunehmen.

Automatisieren statt daran denken müssen
#

Manuelle Backups sind für besondere Situationen sinnvoll.

Als dauerhafte Strategie haben sie einen großen Nachteil:

Man vergisst sie.

Deshalb sollte die reguläre Sicherung automatisiert laufen.

Zum Beispiel:

täglich 03:00
     │
     ▼
Backup erstellen
     │
     ▼
extern speichern
     │
     ▼
alte Backups nach
Retention-Regel löschen

Idealerweise meldet das System außerdem fehlgeschlagene Sicherungen.

Ein Backup-System, das seit drei Monaten unbemerkt Fehler produziert, vermittelt nur falsche Sicherheit.

Eine einfache Strategie für einen normalen Blog
#

Für einen typischen WordPress-Blog muss die Backup-Strategie nicht kompliziert sein.

Ein vernünftiger Ausgangspunkt könnte sein:

täglich
  Datenbank oder Komplett-Backup

mehrere Versionen
  mindestens einige Tage aufbewahren

zusätzlich
  externe Kopie

vor großen Änderungen
  manuelles Backup

regelmäßig
  Restore testen

Entscheidend ist weniger die perfekte theoretische Strategie.

Entscheidend ist, dass die Sicherung automatisch, vollständig und überprüfbar funktioniert.

Unsere WordPress-Backup-Checkliste
#

Vorhanden sein sollten mindestens:

[ ] Datenbank wird gesichert
[ ] Uploads werden gesichert
[ ] Themes werden gesichert
[ ] individuelle Dateien werden gesichert
[ ] Konfiguration wird berücksichtigt
[ ] Backups laufen automatisch
[ ] mehrere Versionen werden aufbewahrt
[ ] mindestens eine Kopie liegt extern
[ ] Fehler beim Backup werden bemerkt
[ ] Wiederherstellung wurde getestet

Wenn wir diese Punkte abhaken können, haben wir bereits eine deutlich bessere Strategie als mit einem gelegentlich manuell heruntergeladenen ZIP-Archiv.

Was kommt nach dem Backup?
#

Backups sind ein Teil einer soliden WordPress-Grundkonfiguration.

Nach einer frischen Installation sollten außerdem unter anderem Updates, HTTPS, Benutzerkonten, Permalinks und nicht benötigte Plugins geprüft werden.

Unsere komplette Übersicht findest du in WordPress nach der Installation: Diese Einstellungen solltest du zuerst ändern.

Und falls du deinen Blog gerade erst planst, beginne bei WordPress-Blog erstellen: Was brauche ich wirklich?.

Fazit
#

Ein WordPress-Backup besteht nicht einfach darin, gelegentlich eine ZIP-Datei zu erzeugen.

Wir müssen wissen, was gesichert wird, wo die Sicherungen liegen und wie lange verschiedene Versionen aufbewahrt werden.

Vor allem müssen wir wissen, ob sich daraus wieder eine funktionierende Website herstellen lässt.

Die wichtigste Backup-Regel lautet deshalb nicht:

Erstelle Backups.

Sondern:

Erstelle Backups und teste die Wiederherstellung.

Denn erst ein erfolgreich wiederhergestelltes Backup ist ein Backup, auf das wir uns wirklich verlassen können.