Gibt es eine richtige Möglichkeit zum Exportieren und Importieren einer großen WordPress MySQL-Datenbank in eine neue Datenbank?
Als ich das auf die übliche Weise versuchte, stieß ich auf zwei Probleme:
Alle Widgets verschwanden und ich musste sie von Grund auf neu erstellen
Ich hatte Probleme mit Sonderzeichen wie '
und musste die Kauderwelschbuchstaben suchen und ersetzen
Dies ist sehr wichtig, da ich von Shared Hosting auf einen verwalteten Server umsteigen muss. Alle Apache-, PHP- und MySQL-Versionen sind gleich.
Ps: Dies müssen SSH-Befehle sein, da phpadmin aufgrund der Datenbankgröße abläuft.
Normalerweise benutze ich mysqldump und sed:
auf altem Server:
mysqldump -u user -p OldWpdatabase > wpdb.sql
sed -i 's/oldurl/newurl/g' wpdb.sql
auf neuem Server:
mysql -u user -p NewWpdatabase < wpdb.sql
sed wird verwendet, um alle fest codierten Vorkommen der Website zu suchen und bei Bedarf zu ersetzen.
Wenn sich Ihr Domain-Name oder Ihre URLs ändern, gibt es zusätzliche Bedenken. Die Dateien und die Datenbank können verschoben werden. Verweise auf den alten Domänennamen oder Speicherort verbleiben jedoch in der Datenbank. Dies kann zu Problemen bei der Anzeige von Links oder Themen führen.
Wenn Sie in Ihrer gesamten Datenbank suchen und ersetzen, um die URLs zu ändern, werden Sie können Probleme mit der Serialisierung von Daten verursachen, da in einigen Designs und Widgets Werte mit der Länge Ihrer markierten URL gespeichert werden. Wenn sich dies ändert, brechen die Dinge. Um dieses Serialisierungsproblem zu vermeiden, haben Sie drei Möglichkeiten: