Modifier le préfixe de votre base de données WordPress après installation

20 décembre 2012 - 238 mots - wordpress

Lors de migration chez OVH, j’ai eu besoin de renommer le préfixe utilisé par mes tables WordPress.
Donc comme à mon habitude, je vous laisse un petit mode d’emploi sur cette manipulation.

Voici la procédure :

  • Modification du fichier wp-config.php

On cherche la ligne :

1
$table_prefix  = 'wp_';

Où l’on remplace par le nouveau préfixe :

1
$table_prefix  = 'new_';
  • Changement du préfixe de l’ensemble de vos tables WordPress
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
RENAME TABLE wp_commentmeta TO new_commentmeta;
RENAME TABLE wp_comments TO new_comments;
RENAME TABLE wp_links TO new_links;
RENAME TABLE wp_options TO new_options;
RENAME TABLE wp_postmeta TO new_postmeta;
RENAME TABLE wp_posts TO new_posts;
RENAME TABLE wp_terms TO new_terms;
RENAME TABLE wp_term_relationships TO new_term_relationships;
RENAME TABLE wp_term_taxonomy TO new_term_taxonomy;
RENAME TABLE wp_usermeta TO new_usermeta;
RENAME TABLE wp_users TO new_users;

Dans le cas d’un WordPress avec le mode multi sites activé (avec une amélioration de Tony) :

1
2
3
4
5
6
7
8
RENAME TABLE wp_blogs TO new_blogs;
RENAME TABLE wp_blog_versions TO new_blog_versions;
RENAME TABLE wp_registration_log TO new_registration_log;
RENAME TABLE wp_signups TO new_signups;
RENAME TABLE wp_site TO new_site;
RENAME TABLE wp_sitemeta TO new_sitemeta;
-- global_terms_enabled = true
RENAME TABLE wp_sitecategories TO new_sitecategories;
  • Modification du contenu de certaines tables

Dans la table wp_options,

1
UPDATE `new_options` SET option_name = 'new_user_roles' WHERE option_name = 'wp_user_roles';

Dans la table wp_usermeta,

1
UPDATE `new_usermeta` SET meta_key = REPLACE( meta_key,'wp_','new_');

Félicitations, votre préfixe est changé.

Commentaires

Tony
Tony

Super l’article. C’est probablement l’un des seuls articles qui explique comment changer le préfixe, même si multi-sites est activé.
Juste un petit point d’amélioration, il y a parfois une table supplémentaire en mode-multisites:
RENAME TABLE wp_sitecategories TO new_sitecategories;

Source : http://sql.sh/1205-wordpress-changer-prefixe-tables
Basé sur la documentation WordPress : http://codex.wordpress.org/Database_Description

15 avril 2013 à 13:23


Laisser un commentaire

Merci. Votre message a bien été enregistré.