WordPress: Datenbank-Umzug leicht gemacht

      0
./bin/move-wordpress.sh

Wie oft hast du schon ein WordPress Backup auf deinem lokalen Rechner erstellt und musstest danach sämtliche URLs in der Datenbank an deine lokale Domain anpassen? Oder der Onlinegang deines WordPress Blogs steht an und du musst alles auf die neue Domain mappen. Dafür wird erst einmal Onkel Google befragt, der die richtigen SQL Statements für den Datenbank-Umzug ausspuckt.

Auch wenn ich mich über jeden Seitenaufruf, der bei dieser Suche generiert werden würde, freuen würde, möchte ich dir stattdessen ein einfaches Bash Skript an die Hand geben.

Zu Allererst musst du die Datei mit entsprechenden Rechten erstellen. Am besten legst du das Skript im bin Verzeichnis deines Homeverzeichnisses an. Dieser Ordner ist oft schon in eurem PATH enthalten, demnach könnt ihr das Skript von überall aus eurem Terminal aus aufrufen. Danach muss die Dateiberechtigung noch um das Ausführungs-Recht ergänzt werden.

touch ~/bin/move-wordpress.sh
chmod +x ~/bin/move-wordpress.sh

Kopiert nun den Skript Code aus dem folgenden gist in eure Datei. Das Skript fragt euch nacheinander nach Datenbank-Nutzer, -Namen, -Prefix und nach der alten sowie neuen URL. Anschließend wird mit dem mysql Befehl die Datenbank aktualisiert.

Insgesamt werden drei Datenbanktabellen aktualisiert: posts, postmeta und options. Mit Hilfe der MySQL Funktion REPLACE werden so alle Vorkommnisse der alten URL mit der neuen URL ersetzt.

An dieser Stelle ein Dank an WP Beaches, von wo ich bisher immer die SQL Statements kopiert habe.

Now it’s as easy as

$ ~/bin/move-wordpress.sh 
Enter mySQL username [root]: deinuser
Enter database name: deinedatenbank
Enter database prefix [wp_]: deinpraefix_
Enter old url: http://alte-url.de
Enter new url: http://neue-url.de
Enter password: 
Done

Hat dir das Skript beim Datenbank-Umzug geholfen? Dann markier es doch gerne mit einem Stern auf github.
Willst du das WordPress Verzeichnis über die Kommandozeile kopieren, hilft dir vielleicht mein Artikel über den rsync Befehl.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert