WordPress Datenbank umziehen mit WP Migrate DB
Mit dem Plugin WP Migrate DB kannst du in wenigen Schritten deine WordPress Datenbank umziehen und alle deine Inhalte auf eine andere Website migrieren. Das Plugin ist vor allem für Entwickler geeignet, um Daten zwischen Staging- und Live-Websites auszutauschen.
WP Migrate DB exportiert deine Datenbank als MySQL-Dump, findet und ersetzt alle URLs und Dateipfade und ermöglicht dann, die Datenbank als SQL-Datei auf dem Computer zu speichern. Um die Migration abzuschließen, kannst du anschließend die SQL-Datei mit z.B. phpMyAdmin auf der Ziel-Website importieren, um dort die bestehende Datenbank zu ersetzen.
WP Migrate DB
Du findest die Basis-Version des Plugins kostenlos im WordPress Plugin Verzeichnis. Es existiert auch eine Pro-Version mit mehr Features, dazu aber später mehr. WP Migrate DB stammt vom Entwickler-Studio Delicious Brains und ist derzeit auf 300.000 Websites aktiv.
Im Gegensatz zu dem im Core enthaltenen WordPress Importer erlaubt es die Migration der kompletten WordPress Datenbank, d.h. es werden nicht nur deine Inhalte wie Beiträge und statische Seiten, sondern auch alle Core-, Theme- und Plugin-Optionen mit eingeschlossen.
WordPress Datenbank exportieren
Du findest die Einstellungen des Plugins unter Werkzeuge → Migrate DB in deinem WordPress Backend. Die Hauptfunktion Export File ist bereits ausgewählt und erlaubt dir den Download einer komprimierten gzip-Datei deiner Datenbank.
Neben dem Exportieren einer SQL-Datei kannst du mit der kostenlosen Version auch Inhalte in der Datenbank der Website suchen und ersetzen. Für diese Aufgabe würde ich wegen des besseren Feature-Sets aber das Plugin Search & Replace empfehlen.
In den Optionen für Find & Replace kannst du die URL deiner Website und falls notwendig den Dateipfad des wp-content-Verzeichnisses beim Exportieren automatisch ersetzen lassen. Meistens reicht die URL für die Ziel-Website. In den Advanced Options kannst du bestimmte Inhalte wie Spam-Kommentare, Revisionen und Transients vom Export ausschließen.
Schlussendlich besteht noch die Option, deine Einstellungen als Migrations-Profil zu speichern. Damit kannst du die gleiche Migration ohne erneute Konfiguration zu einem späteren Zeitpunkt erneut durchführen. Mit einem Klick auf Export & Save wird der Export ausgeführt und die SQL-Datei nach Fertigstellung zum Download angeboten.
Im Gegensatz zu einem Datenbank-Backup mit einem WordPress Backup Plugin oder einem MySQL-Dump mit phpMyAdmin ist die exportierte SQL-Datei von WP Migrate DB direkt für einen Import vorbereitet, weil alle URLs und Dateipfade bereits für die Ziel-Website angepasst und geändert wurden.
WordPress Datenbank umziehen mit SQL-Import
Als finalen Schritt kannst du die exportierte SQL-Datei nun auf der Ziel-Website importieren. In den meisten Fällen solltest du Zugang zu einem Datenbank-Management-Tool haben, mit dem du den Import der Datenbank mit einer Weboberfläche durchführen kannst.
Webhosting-Anbieter geben dir in der Regel einen Zugang zur Datenbank mit Tools wie Adminer oder phpMyAdmin. Von dort ist ein Import der SQL-Datei möglich.
Die SQL-Datei von WP Migrate DB enthält DROP TABLE Befehle, d.h. deine bestehenden WordPress Tabellen werden komplett gelöscht und durch die neu importierten Tabellen ersetzt. Wie immer bei solch kritischen Tätigkeiten empfehle ich unbedingt, im Vorfeld für ausreichende Backups aller Daten zu sorgen – just in case.
Mehr Features mit WP Migrate DB Pro
Für das kostenlose WordPress Plugin gibt es auch eine Pro-Version, welche eine Reihe von Add-ons und zusätzlicher Features bietet.
Unter anderem ist damit auch der Import von exportierten SQL-Dateien möglich, sodass externe Werkzeuge wie phpMyAdmin überflüssig sind und du alles direkt im WordPress Backend erledigen kannst. Mit den Funktionen für Push und Pull ist auch eine einfache Synchronisation von Staging- und Live-Server möglich, ohne dass mit SQL-Dateien hantiert werden muss.
Die Add-ons von WP Migrate DB Pro ermöglichen den Abgleich von Theme-, Plugin- und Media-Dateien zwischen zwei WordPress Installationen, besseren Support für WordPress Multisites und eine Integration mit WP-CLI, dem Kommandozeilen-Tool von WordPress.
Fazit
Ich verwende WP Migrate DB eher selten, aber es hat immer hervorragend funktioniert, wenn ich Bedarf für eine Migration der Datenbank hatte. Das Plugin zeichnet sich durch seinen Fokus auf einen bestimmten Zweck und sehr gute Usability aus. Und das Wichtigste: Es läuft zuverlässig ohne zu crashen und hat keine Probleme mit komplexen und großen Datenbanken.
Hallo Thomas,
danke für den interessanten Beitrag. Jetzt bin ich neugierig geworden, was verwendest Du denn für einen Umzug (Du schreibst, dass Du WP Migrate DB eher selten verwendest)?
Ich habe es bisher i.d.R. mit einem Datenbank-Backup und Import (über phpMyAdmin) und anschließedem „Database Search and Replace Script in PHP“ ( https://interconnectit.com/124/search-and-replace-for-wordpress-databases/) gelöst.
Aber WP Migrate DB werde ich mal ausprobieren.
Viele Grüße
Susanne
Hallo Susanne,
Ich verwende das Plugin eher selten, weil ich selten Bedarf für einen Umzug der WordPress Datenbank habe 😉
Ansonsten setze ich auch direkt Tools der Webhoster ein. Heutzutage bieten immer mehr Anbieter extra Lösungen für Staging Websites.
Viele Grüße,
Thomas
Hallo Thomas,
danke, ich hatte gehofft, Du hast vielleicht noch das ultimative Tool in der Hinterhand 😉
Viele Grüße
Susanne
Ich habe es schon so gemacht wie Susanne oder auch mit WP-Migrate DB. Jetzt will ich die Daten (Beiträge und Bilder) aus einem alten Blog gern in meinen neuen Blog überspielen. Der enthält allerdings auch schon viele Beiträge. Die will ich natürlich nicht verlieren. Kann ich das mit WP Migrate DB auch machen oder welche Methode wäre da angezeigt? Einfach Export per XML geht ja nicht, weil mir dann die Fotos fehlen würden. Danke.
WP Migrate DB passt da weniger, weil es ja die komplette Datenbank der WordPress Installation migriert, d.h. inklusive Userdaten, Optionen usw. Bei der Migration wird auch die bestehende Datebank ersetzt.
In deinem Fall soll die Datenbank des neuen Blogs ja erhalten bleiben und nur einige alte Beiträge importiert werden. Dafür würde ich tatsächlich den normalen WordPress Importer verwenden. Er bietet die Option, die Medien-Dateien mit zu importieren.
Beim Export werden nur die Beitragsdaten als XML gespeichert, ohne Bilder. Beim Import holt sich der neue Blog dann die Bilder anhand der URLs von der alten Website. Dazu muss diese immer noch öffentlich zugänglich sein, damit auf die Bild-URLs zugegriffen werden kann.
Hoffe dass hilft dir weiter 🙂
Viele Grüße,
Thomas
Danke, Thomas. Abschalten kann ich also nicht, weil die URL öffentlich zugänglich sein muss. Dann erzeuge ich Double Content – oder? Kann ich die Domaine abschalten und die Bilder trotzdem öffentlich zugänglich halten? Vielleicht über die .htaccess oder mit einem dieser Plugins, mit denen man den Maintenance-Mode einschaltet? HG
Sorry, ich habe das etwas unverständlich beschrieben. Der alte Blog muss nur beim Import-Vorgang zugänglich sein, damit von dort die Bilder geholt werden können. Die Bilder werden von der alten Website heruntergeladen und direkt in der Mediathek des neuen Blogs gespeichert, sind also dann dort ganz normal verfügbar.
Nach dem Import kann die alte Website abgeschaltet werden, oder noch besser, eine 301-Weiterleitung auf die neue Website.
Viele Grüße,
Thomas
Ich habs schon gesehen. Danke, Thomas. War das immer so, dass nach dem Importvorgang die Bilder quasi „rübergeholt“ werden? Mir war so, als sei das früher nicht so gewesen und nur die Texte seien nach dem Vorgang verfügbar gewesen. Vielleicht habe ich vergessen, die Medien mit zu downloaden? Egal. Hat jedenfalls funktioniert Dank deiner Hilfe.
Ja, das Feature zum Import von Medien gibt es meiner Meinung nach schon seit einigen Jahren. Weiß aber nicht genau seit wann 🙂
Hi! Schönes Tutorial, wirklich sehr komfortables Plugin für einen schnellen Domainumzug.
Für Leute die einen Domain Umzug oder eine Servermigration lieber ohne Plugin vornehmen wollen, gibt es noch ein anderes Tool. Dazu hier auch ein kleines Tutorial von mir: https://webdeasy.de/wordpress-seite-umziehen-ohne-plugin/
Viele Grüße
LH
Lieber Thomas,
danke für deine tollen Tipps immer. Ich bin immer stiller Leser hier bei dir. Du bist mein Held 🙂
Eine Frage habe ich, wie heisst das Plugin, mit dem du die Plugins hier mit Anzahl der Downloads, letzte Aktualisierung hier präsentierst?
Ich hatte es schon mal, finde es aber nicht mehr und weiß den Namen leider auch nicht mehr.
Liebe Grüße und Danke im voraus
Hallo Jörg,
Sehr gerne, vielen Dank fürs Lesen und das tolle Feedback 🙂
Ich nutze dafür Plugin Cards: https://de.wordpress.org/plugins/plugin-cards/
Einen Beitrag über das Plugin gibt es unter https://themecoder.de/2016/09/19/plugin-informationen-von-wordpress-org-mit-plugin-cards-einfach-einbinden/
Liebe Grüße,
Thomas
Noch einmal zum Verständnis: Das Plugin exportiert lediglich die Datenbank und nicht die Dateien/Bilder usw. aus dem Upload-Ordner, die Theme- & Plugin-Dateien usw? Diese muss man dann manuell via FTP umziehen?
Ja genau. Generell ist es eher ein Tool für Developer, um die Datenbank zwischen Website und Staging / Localhost schnell abzugleichen. Für einen Umzug der kompletten Website inklusive Dateien ist also etwas manueller Aufwand notwendig, hier sind andere Tools wohl besser geeignet.