Datenbank-Präfix von WordPress nachträglich ändern

Dieser Text wurde am 12. September 2014 veröffentlicht und enthält möglicherweise veraltete Informationen.

Zunächst sollte ein Backup der Datenbank und der Datei wp-config.php erstellt werden.

Mit SQL-Befehlen werden nun die einzelnen Tabellen umbenannt. Soll der neue Präfix tp461o2_ sein, dann sieht das so aus:

RENAME TABLE `wp_commentmeta` TO `tp461o2_commentmeta`;
RENAME TABLE `wp_comments` TO `tp461o2_comments`;
RENAME TABLE `wp_links` TO `tp461o2_links`;
RENAME TABLE `wp_options` TO `tp461o2_options`;
RENAME TABLE `wp_postmeta` TO `tp461o2_postmeta`;
RENAME TABLE `wp_posts` TO `tp461o2_posts`;
RENAME TABLE `wp_terms` TO `tp461o2_terms`;
RENAME TABLE `wp_term_relationships` TO `tp461o2_term_relationships`;
RENAME TABLE `wp_term_taxonomy` TO `tp461o2_term_taxonomy`;
RENAME TABLE `wp_usermeta` TO `tp461o2_usermeta`;
RENAME TABLE `wp_users` TO `tp461o2_users`;

Im Anschluss müssen noch alle Werte in den Tabellen options und usermeta aktualisiert werden, die auf den alten Tabellenpräfix verweisen.

UPDATE `tp461o2_options` SET `option_name`=REPLACE(`option_name`,’wp_’,’tp461o2_’) WHERE `option_name` LIKE ‘%wp_%';
UPDATE `tp461o2_usermeta` SET `meta_key`=REPLACE(`meta_key`,’wp_’,’tp461o2_’) WHERE `meta_key` LIKE ‘%wp_%';

Zuletzt wird der Tabellenpräfix in der wp-config.php angepasst und alles sollte rund laufen:

$table_prefix  = 'tp461o2_';

Anzumerken ist noch, dass diese Methode zwar funktioniert, aber Schwierigkeiten auftreten können sobald weitere Tabellen von Plugins angelegt worden sind. Diese müssen dann auch entsprechend umbenannt werden. Am Besten wird der Präfix aber schon bei der Installation von WordPress entsprechend angepasst, so dass diese Änderung später gar nicht mehr nötig wird.

Referenz