WordPress Backup erstellen − so gelingt es mit Plugin und manuell 

|
Anleitung für die manuelle Sicherheitskopie oder per Plugin

Alle Daten weg − das kann einem Schweiß auf die Stirn treiben. In so einem Notfall ist ein Backup goldwert. Wie du für WordPress eine Sicherung anlegst − per Plugin oder manuell. Wie du es wieder einspielst, erfährst du in diesem Artikel.

Weshalb sollte ich regelmäßig WordPress Backups erstellen?

Vermutlich hast du viel Arbeit und Herzblut in deine WordPress Seite gesteckt. Und das soll natürlich nicht verloren gehen, wenn mal was schief geht. Und schief gehen kann Vieles bedeuten: Von Problemen oder Fehlern bei Updates (ist mir bei WordPress bisher nur ein einziges Mal passiert) bis hin zu einem gehackten Account, ist alles möglich. In so einem Fall ist es wichtig, die Seite schnell wieder an den Start zu bekommen und dann die Version immer so aktuell wie möglich zu halten.
 

Wenn du jetzt denkst „Mein Verein ist so klein, den wird schon keiner hacken“ – dieses Argument zieht leider nicht. WordPress hat unter den Content Management Systemen einen Marktanteil von ca. 64 Prozent und je häufiger eine Anwendung genutzt wird, desto beliebter wird diese auch für Angreifer und Hacker. Die meisten Angriffsversuche passieren automatisiert und richten sich nicht gegen spezifische Seiten – du könntest also quasi rein zufällig angegriffen werden. Mehr zum Thema Sicherheit habe ich im Artikel „WordPress – aber sicher!” zusammengestellt.

Das solltest wissen, bevor du ein WordPress Backup erstellst

Backups sind also wichtig und das Erstellen ist relativ einfach. Du solltest das deshalb regelmäßig machen. Aber wie erstellst du am besten ein Backup deiner WordPress Seite? 

WordPress besteht im Prinzip aus zwei Teilen: den Dateien im File-System, also dem WordPress Core, plus den installierten Plugins und Themes und den hochgeladenen Mediendateien, sowie der Datenbank, in der alle Einstellungen und vor allem die Inhalte gespeichert sind. Und das sind auch genau die Teile, die wir bei einem Backup sichern müssen.

Das Backup sollte nicht auf dem gleichen System gespeichert werden, wie deine eigentliche Seite. 

Du würdest ja auch nicht die Sicherheitskopie eines wichtigen Vertrags in dieselbe Schublade legen, wie das Original, oder? ;-)

Wie erstelle ich ein WordPress Backup mit Plugins?

WordPress bietet mit den Plugins natürlich eine einfache Möglichkeit das System zu erweitern. Backup-Plugins für WordPress gibt es reichlich. Bei einer Suche nach Backup werden mir über 1.000 Ergebnisse angezeigt. Hier eine allgemeingültige Anleitung zu geben, ist natürlich nicht möglich.
 

Ich habe mir das Plugin BackWPup als Beispiel ausgesucht, da es auch in der kostenlosen Version schon viele Features bietet. Ein weiterer Vorteil ist, dass die Backups selbst sehr ähnlich zu einem manuellen Backup sind und daher eigentlich in jeder Umgebung eingespielt werden können.
 

Natürlich musst du zunächst das Plugin installieren. Danach kannst du im Menü unter BackWPup › Aufträge einen Job, anlegen. Für mich haben die Standard-Einstellungen ganz gut gepasst. Für den Anfang musst du nur unter Zielverzeichnis des Auftrags „Backup in Verzeichnis“ auswählen. Anschließend kannst du den Auftrag ausführen und nach kurzer Wartezeit unter BackWPup › Backups dein erstes Backup herunterladen.

Backup erstellen mit BackWPup
Backup erstellen mit BackWPup

In der ZIP-Datei sind alle Dateien enthalten inklusive einer .sql-Datei, welche die Daten der Datenbank enthält. Und das war es auch schon. Du hast ein Backup deiner WordPress Website erstellt.
 

Du kannst jetzt noch mal ganz in Ruhe die Einstellung deines Backup-Auftrags durchgehen. Vielleicht willst du das Backup ja automatisch in eine Dropbox laden? Nimm dir die Zeit, denn nichts ist ärgerlicher als ein Backup, von dem man dachte, man hätte es.

WordPress Backup manuell erstellen – so funktioniert es

Wer lieber nicht auf Plugins vertraut, sondern die Arbeit manuell erledigt, muss diese zwei Schritte selbst durchführen.

Dateien sichern

Kümmern wir uns zuerst um die Dateien. Dazu musst du dich per FTPS oder SFTP mit dem Server verbinden. Dann kannst du das komplette WordPress Verzeichnis herunterladen. Da das viele kleine Dateien sind, dauert es trotz der geringen Größe vermutlich relativ lange.
 

Wenn du mit SSH vertraut bist und dir einen SSH Key eingerichtet hast, kannst du diesen Schritt auch ohne Probleme über die Command Line ausführen:

ssh dev-mittwald tar c -C "html/wordpress" . | tar xvf - -C "$(date +%Y%m%d)"

Okay. Langsam. Was passiert hier?
 

  • Wir rufen SSH mit der SSH-Konfiguration dev-mittwald auf und packen das Verzeichnis html/wordpress in ein TAR-Archiv. Das musst du natürlich anpassen, wenn deine Konfiguration anders ist oder du WordPress unter einem anderen Pfad installiert hast.
  • Das Archiv speichern wir nicht in eine Datei, sondern pipen es direkt übers Netzwerk, dafür die Pipe |.
  • Den Inhalt schieben wir also direkt in den tar-Befehl zum Entpacken. "$(date +%Y%m%d)" gibt den Verzeichnisnamen an, den ich direkt aus dem Datum nach dem Muster 20220630 generieren lasse.
Datenbankinhalte müssen gesichert werden.
Datenbankinhalte müssen gesichert werden.

Das Sichern der Datenbank kannst du über phpMyAdmin machen. Logge dich dafür im Kundencenter ein und wähle für deine Datenbank phpMyAdmin aus. In phpMyAdmin klickst du links auf die Datenbank und anschließend auf Exportieren. Auch hier passen die Standardeinstellungen meistens. Mit einem Klick auf OK startet der Export und die Datei wird heruntergeladen.
 

Aber natürlich gibt es auch hierfür die Profi-Lösung über SSH.


Damit das auch langfristig funktioniert, ist es sinnvoll, die Zugangsdaten für die Datenbank auf dem Server zu hinterlegen. Dafür legst du unter "~/files/.my.cnf" eine Datei mit deinen Zugangsdaten an.

[mysql]
  host=db001234.mydbserver.com
  user=p12345
  password=******
[mysqldump]
  host=db001234.mydbserver.com
  user=p12345
  password=******

Du fragst dich jetzt vielleicht: Zugangsdaten im Klartext? Naja, in der wp-config.php stehen die Daten auch im Klartext und Dateien unter ~/files sind nur direkt auf dem Server verfügbar. Außerdem taucht das Passwort so nicht in deinem eigentlichen Befehl und damit auch nicht in der History auf.

Wenn du die Zugangsdaten hinterlegt hast, kannst du mit diesem SSH-Befehl den aktuellen Stand der Datenbank, einen sogenannten Dump, in eine lokale Datei schreiben.

ssh dev-mittwald mysqldump --defaults-file="~/files/.my.cnf" --no-tablespaces "usr_p53441_1" > "database.sql"
  • Auch hier nutzen wir wieder die SSH-Konfiguration dev-mittwald, diesmal aber mit mysqldump-Befehl
  • usr_p53441_1 ist der Name der Datenbank, die du sichern möchtest.
  • Mit > leiten wir die Ausgabe des Befehls in eine Datei um, in unserem Fall eine .sql-Datei; den Namen kannst du frei wählen.

Hält den Rücken frei: WordPress Backup von Mittwald

Bei Mittwald bist du immer auf der sicheren Seite. Wir erstellen automatisiert jede Nacht ein Backup aller relevanten Daten deines Webservers, der MySQL-Datenbanken und E-Mail-Postfächer. Du kannst auswählen, wie lange die Backups aufbewahrt werden sollen. Je länger die Backups gespeichert werden, desto mehr Speicher wird natürlich verbraucht. Zum Einspielen eines Backups wendest du dich einfach an den Kundenservice. Details mit einer ausführlichen Erklärung findest du im FAQ-Artikel „Backup einspielen lassen“.
 

Neben automatischen Backups gibt es bei Mittwald noch Wiederherstellungspunkte. Damit erstellst du quasi eine Momentaufnahme von deinem Projekt. Zu diesem Stand kannst du einfach wieder zurückkehren, indem du den Wiederherstellungspunkt einspielst.

So stellst du deine WordPress Seite mit einem Backup wieder her

Das 
Macht deine Arbeit leichter Hosting

mittwald
Hosting neu gedacht

Wenn du dein Backup mit einem Plugin erstellt hast, schaust du am Besten in dessen Dokumentation oder FAQ unter wordpress.org/plugins. Hier gibt es in der Regel eine Anleitung. BackWPup bietet beispielsweise ein Restore-Feature, mit dem du das Backup direkt über das WordPress Backend einspielen kannst. Voraussetzung dafür ist natürlich, dass du Zugriff darauf hast. Ansonsten kannst du das Backup aber auch wie bei einem manuellen Backup einspielen.

Um ein manuelles Backup einzuspielen, musst du die zwei Teile (Dateien und Datenbank) wieder hochladen.

Dateien hochladen

Für die Dateien verbindest du dich wieder per FTPS oder SFTP mit dem Server und lädst den kompletten Inhalt des zuvor gespeicherten Archivs hoch. Für SSH-Nutzer gibt es das CLI-Tool scp:

scp -r ~/backups/20221712 dev-mittwald:html/wordpress
  • -r gibt an, dass du ein Verzeichnis rekursiv kopieren möchtest
  • ~/backups/20221712 ist der Pfad zu deinem lokalen Backup
  • dev-mittwald kommt dir bestimmt bekannt vor. Das ist deine SSH-Config, die verwendet werden soll. Danach kommt mit einem : getrennt der Zielpfad auf dem Server. Da das Verzeichnis überschrieben werden soll, ist es wichtig, dass am Ende des Zielpfades kein / angegeben ist.

Datenbank importieren

Wie beim Export kannst du auch den Import über phpMyAdmin erledigen. Logge dich dafür wieder im Kundencenter ein und wähle für deine Datenbank phpMyAdmin aus. In phpMyAdmin klickst du links auf die Datenbank und anschließend auf Importieren. Bei der Dateiauswahl wählst du die zuvor exportierte .sql-Datei aus und startest den Import mit einem Klick auf OK. Sollten in der Datenbank noch Tabellen vorhanden sein, solltest du diese im Reiter „Struktur“ vor dem Import löschen.
 

Eine Anleitung, wie du über die CLI einen Dump importierst, findest du im FAQ-Artikel Datenbank exportieren und importieren.

Bonus-Tipp: Backup testen

Teste das Einspielen deines Backups mindestens nach deinem ersten Backup. Im Notfall ist nichts ärgerlicher, als ein nicht funktionierendes oder unvollständiges Backup, das nicht genutzt werden kann.

Feels good!

Hoste deine Projekte auf dem Agentur-Server und unser Kundenservice steht dir 24/7 mit Rat und Tat zur Seite nicht nur mit Backups sondern bei allen Fragen rund um dein Hosting und deine WordPress Projekte. Genieße die Freiheit, dich auf das Wesentliche zu konzentrieren.

Ähnliche Artikel:

Webentwicklung

WordPress 6.0 – diese Verbesserungen bietet die neue Version

WordPress 6.0 ist der nächste große Release des CMS. Hier liest du alle Neuerungen und Highlights der Version.

Webentwicklung

WP-CLI – Das Power-Tool, nicht nur für Nerds

Mit dem WordPress Command Line Interface (WP-CLI) könnt ihr euch viel Arbeit ersparen. Wie ihr es installiert und anwendet, erfahrt ihr hier.

WordPress Logos
Webentwicklung

So funktioniert der Domain-Umzug mit WordPress

Der Domain-Umzug mit WordPress ist keine Raketenwissenschaft. Dennoch gibt es einiges zu beachten. WordPress-Pro Lukas erklärt, wie es geht.

Kommentare

Benjamin Hagh Parast am
Bei WordPress Backups empfehle ich das All-in-One WP Migration Plugin (Kostenlos bei kleineren Websites). Das Plugin sichert sowohl alle Files als auch die Datenbank mit nur einem klick und sichert die Backup Datei auf dem Server ab. Auch das herunter laden oder der Restore ist problemlos möglich.

Das Plugin könnt Ihr gerne über https://wordtune.org/plugins/all-in-one-wp-migration/ kostenlos in einer Test Instanz angeboten von tastewp.com ausprobieren.
Antworten
Gregor Wendland am
Ich finde das erstellen eines Backups per SSH auch echt super! Man kann es sich einfacher machen, wenn man sich ein Script dafür erstellt, in das man pro Projekt recht einfach die unterschiedlichen Zugangsdaten eingeben kann.
Ich habe da vor einiger Zeit was gebaut, was gern auch andere verwenden können: https://github.com/livelongandprosper/gw_backup_script_bash
Antworten

Kommentar hinzufügen