WordPress Umzug:: SQL Easy Script

      0

Screenshot vom bash Code für den WordPress Umzug

Da es mir des öfteren mal passiert, habe ich nun nach Jahren endlich mal ein Skript für den SQL WordPress Umzug geschrieben. Bisher habe ich immer die SQL-Queries, um die alte URL durch die neue zu ersetzen, ergooglet und mühsam mit Copy & Paste die Pfade und ggf. Präfixe ausgetauscht.

Damit ist nun Schluss, denn das Bash-Skript fragt die für mich wichtigsten Daten ab, kann einfach erweitert werden und ist schnell ausgeführt.

Der Code

#!/bin/bash
#
# This script is used to update database url entries for wordpress.
#
# © Nick Böcker <https://nick-hat-boecker.de> 2019

# User input mysql username
read -p "Enter mySQL username [root]: " USER
USER=${USER:-root}

# User input mysql database
read -p "Enter database name: " DATABASE

# User input mysql database prefix
read -p "Enter database prefix [wp_]: " PREFIX
PREFIX=${PREFIX:-wp_}

# User input mysql new and old url
read -p "Enter old url: " OLD_URL
read -p "Enter new url: " NEW_URL

# Execute command with given credentials and parameters
mysql --user="$USER" --database="$DATABASE" --execute="UPDATE ${PREFIX}posts SET guid = REPLACE(guid, '${OLD_URL}', '${NEW_URL}'); UPDATE ${PREFIX}posts SET post_content = REPLACE(post_content, '${OLD_URL}', '${NEW_URL}');UPDATE ${PREFIX}postmeta SET meta_value = REPLACE(meta_value, '${OLD_URL}', '${NEW_URL}'); UPDATE ${PREFIX}options SET option_value = REPLACE(option_value, '${OLD_URL}', '${NEW_URL}');"

echo 'Done'

Folgende Daten werden abgefragt und sind für den WordPress Umzug essentiell:

  • mySQL Username
  • mySQL Databasename
  • mySQL Databaseprefix (standardmäßig „_wp“)
  • die alte URL, die aktuell in der Datenbank steht
  • die neue URL, die die alte ersetzen soll

Am Ende werdet ihr dann noch nach eurem mySQL Passwort gefragt und schon führt das Skript die benötigten SQL Befehle aus.

Schreibe einen Kommentar

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