» Datenbanktabellen umbenennen (WordPress-Optimierung, Teil 2)
Wie der UTF-8-Vermerk wird auch der Datenbank-Präfix bei WordPress-Installationen skriptseitig vorgegeben. Auch die Tabellenbezeichnung findet sich also in der config.php.
Aus Sicherheitsgründen wird empfohlen, die Datenbanktabellen nicht wie vorgegeben, mit dem Datenbank-Präfix „wp_“ zu kennzeichnen, sondern mit einer beliebigen anderen Bezeichnung („xyz_“).
Ändert man den Tabellen-Präfix schon vor der Installation, sollten weitere Schritte überflüssig sein. Die Datenbanktabellen werden in diesem Fall entsprechend angelegt und mit Inhalten gefüllt…
Theoretisch kann man bei WordPress-Installationen mehrere Systeme über eine einzige Datenbank verwalten. Wer so bereits mehrere Systeme verwendet, wird ohnehin schon zusätzliche Datenbanktabellen (und -Präfixe) konfiguriert haben. Auch hier könnten zumindest die „ersten“ Datenbanktabellen noch mit wp_ gekeinnzeichnet und änderungswürdig sein.
Wie kann man seine Datenbanktabellen also ändern?
Nachdem man seine Datenbank gesichert hat, verwendet man zunächst wieder ein Tool, wie phpMyAdmin (gibt`s auch als WordPress-Plugin, falls nicht verfügbar). Damit lassen sich die Datenbanktabellen schon einmal simpel umbenennen.
Damit WordPress mit den neuen Tabellen-Präfixen arbeiten kann, muss man gespeicherte Präfixe der jetzigen Datenbanktabellen anschließend anpassen. Denn diese verweisen noch auf Datenbanktabellen, die nicht mehr existieren, während die neuen Tabellen noch nicht adressiert werden.
Normalerweise genügt es, in „(präfix_)options“ und „(präfix_)usermeta“ nach veralteten Präfixen zu suchen und diese den neuen Datenbanktabellen bzw. Präfixen anzupassen. Trotz dieses Hinweises von Jan Häusler habe ich mir die Mühe gemacht, einmal sämtliche Datenbanktabellen nach veralteten Präfixen zu durchforsten. Es blieb dabei. So konnte ich die Umbenennung also abschließen:
UPDATE new_options SET option_name = REPLACE(option_name, 'old_', 'new_');
und
UPDATE new_usermeta SET meta_key = REPLACE(meta_key, 'old_', 'new_');
…führten blitzschnell zum gewünschten Ergebnis, wobei „old“ und „new“ zuvor natürlich jeweils durch alten und neuen Datenbankpräfix zu ersetzen sind.
Schon sollte die Datenbank mit den „neuen“ Datenbanktabellen einsatzbereit sein, sofern nicht vergessen wurde, den „wp_“-Vermerk in der config.php den geänderten Datenbanktabellen anzupassen. 😉