Prefix der Tabellen von WordPress ändern

Heute ein weiterer Artikel der Reihe “Absichern von WordPress”. Es geht um das Nachträgliche Ändern des Präfixes der WordPress Datenbank-Tabellen.

Am einfachsten kann der sogenannte “prefix” schon bei der Installation angepasst werden. In der entsprechenden Eingabemaske muss nur der entsprechende Eintrag verändert werden. Wenn man jedoch im nachhinein seine Installation etwas absichern möchte, so ist ein bisschen mehr Arbeit von nöten.

Bevor man die folgenden Schritte durchführt muss unbedingt die Datenbank von WordPress gesichert werden. Dies kann man entweder über ein Plugin, über phpMyAdmin oder auf der Konsole mit mysqldump erledigt werden. Hierzu genügt der folgende Befehl:

mysqldump --add-drop-table -h myDBserver -u myBlogUser -p \
myBlogDatabase | bzip2 -c > myBlogBackup.sql.bz2

1. Nachdem die DB gesichert wurde, wird der entsprechende Eintrag in der Datei /wp-config.php geändert. Welchen neuen Präfix man verwendet ist prinzipiell egal, Hauptsache er wird verändert! Ich nenne ihn hier „mtp_“.

2. Dieser Schritt geht am einfachsten mit phpMyAdmin. Es muss jede Tabelle umbenannt werden. Dazu öffnet man die Datenbank seiner WP-Installation und klickt die einzelnen Tabellen an, anschliessend geht man auf den Reiter „Operationen“ und dort dann auf „Tabelle umbenennen“. Mit den MySQL Bordmitteln (auf der Konsole) geht es folgendermaßen, wobei der RENAME-Befehl für jeden Eintrag wiederholt werden muss:

mysql -u myBlogUser -p myBlogDatabase

mysql> SHOW TABLES;

+- – – – – – – – – – – – – – +

| Tables_in_myBlogDatabase   |

+- – – – – – – – – – – – – – +

| wp_blc_filters             |

| wp_usermeta                |

| wp_users                   |

+- – – – – – – – – – – – – – +

30 rows in set (0.00 sec)

RENAME TABLE wp_users TO mtp_users;

\q

3. Nun müssen noch zwei Verwaltungseinträge von WordPress angepasst werden. Wenn man das vergisst, bekommt man folgende Nachricht:

You do not have sufficient permissions to access this page.

Um das zu vermeiden wechselt man zuerst auf die Tabelle (in phpMyAdmin), die vor dem umbenennen „wp_options“ hieß. Bei mir heißt sie jetzt „mtp_options“. Hier klickt man auf „SQL“ und führt dann folgenden Befehl aus:

UPDATE mtp_options SET option_name = REPLACE(meta_key, 'wp_', 'mtp_');

Die zweite Änderung ist in der Tabelle „mpt_usermeta“ nötig. Dieses mal mit den Bordmitteln von MySQL hier gezeigt. Mit phpMyAdmin geht es analog zu der eben gemachten Änderung von “mtp_options“. Zurück auf die Konsole:

mysql -u myBlogUser -p myBlogDatabase
UPDATE mtp_usermeta SET meta_key = REPLACE(meta_key, 'wp_', 'mtp_');
\q


Die Artikelserie “Absichern von WordPress” soll helfen, die eigene Installation von WordPress auf einem Webserver gegen Angriffe zu schützen. Bisher sind erschienen:

Leave a Reply

Your email address will not be published. Required fields are marked *