Modifier le préfixe de votre base de données WordPress après installation
Laisser le préfixe de votre base de données MySQL sur sa valeur par défaut, à savoir wp_, constitue un risque de sécurité pour votre installation WordPress. Si vous ne l’avez jamais changé, suivez donc ce tutoriel simple et rapide.
N.B : avant toute intervention dans votre base de données WordPress, faites une sauvegarde complète !
Étape n°1 – Édition du fichier wp-config.php
Situé à la racine de votre serveur FTP, le fichier wp-config.php abrite les identifiants de connexion à la base de données.
Ainsi, localisez la ligne suivante qui contient le préfixe des tables de la base :
$table_prefix = 'wp_';
Il s’agit donc de modifier la valeur par défaut fixée sur wp_

Indiquez un préfixe différent que le classique wp_
Évidement, si celle-ci est déjà fixée sur une autre valeur, parcourez les autres tutoriels du site.
N’oubliez pas de sauvegarder le fichier modifié.
Etape n°2 – Changer le préfixe de l’ensemble de vos tables WordPress
Cette étape est de loin la plus fastidieuse et la plus risquée !
Il vous faut intervenir dans votre base à l’aide de phpMyAdmin ou de l’outil de gestion proposé par votre hébergeur. Connectez-vous donc sur l’administration de votre serveur pour y accéder.

Utilisez les commandes SQL pour un renommage de masse
Exécutez à présent les requêtes SQL suivantes en prenant soin d’indiquer votre nouveau préfixe :
Rename table wp_commentmeta to wplabo_commentmeta; Rename table wp_comments to wplabo_comments; Rename table wp_links to wplabo_links; Rename table wp_options to wplabo_options; Rename table wp_postmeta to wplabo_postmeta; Rename table wp_posts to wplabo_posts; Rename table wp_terms to wplabo_terms; Rename table wp_term_relationships to wplabo_term_relationships; Rename table wp_term_taxonomy to wplabo_term_taxonomy; Rename table wp_usermeta to wplabo_usermeta; Rename table wp_users to wplabo_users;
Étape n°3 – Modifications de certains tables de la base MySQL
Si vous en restez là, WordPress ne vous donnera plus les droits d’accès à votre administration. Vous obtiendrez alors, ce type d’erreur :

Faisons en sorte d’obtenir les droits d’accès à votre administration WordPress
Adaptez ce qui suit avec votre nouveau préfixe !
Édition de la table wp_options
Il nous faut donc intervenir dans wp_options, recherchez donc la valeur wp_user_roles dans la colonne option_name et indiquez votre nouveau préfixe.

Cette valeur est située à la ligne 96.

Remplacez le préfixe wp_ par celui que vous venez de définir
Édition de la table wp_usermeta
Changez à présent tout les anciens préfixes de la colonne meta_key au nombre de 5 dans mon cas.

Le nombre de champs à éditer peut varier en fonction de votre version de WordPress
Félicitations ! Nous voici arriver au terme de ce tutoriel qui vous aura montrer comment changer manuellement le préfixe de votre base de données WordPress. Votre site bénéficie à présent d’un niveau de sécurité accru contre les hackers.
Podcast: Télécharger (Durée: 5:13 — 115.7MB)
WordPress 3.5 – Un CMS pour créer et gérer blogs et sites Web
RT-Theme 17, traduction française
Maven Hosting, 12 mois d’hébergement
Themetick, traduction française
Bon, j’avoue, j’avais quand même un peu d’appréhension pendant que je bidouillais la base MySQL mais tout va bien !
Encore un tuto (très clair et accessible) qui me permet d’améliorer mon blog et de progresser.
Merci.
Merci pour le tuto.
Je cherchai à faire en début de semaine mais je trouvai pas le champ pour renommer les tables sous 1&1.
Là je pourrais le faire ce soir.
J’avais utilisé http://www.seoegghead.com/software/wordpress-table-rename.seo qui avait parfaitement fonctionné.
Merci du plugin !
Merci
Je bloque a la dernière phases
édition de la table wp_usermeta
car les meta keys si je me trompe pas j’en trouve 41, je voudrais pas faire une erreur
Quel est le champ a modifié si c’est bien sa
merci
Il faut modifier uniquement les champs commençant par wp_
Merci maintenant j’ai acées au back-office
mais maintenant fatal error out of memory
Suite a la tentative de mise a jour vers la nouvelle version
est ce que c’est lier
merci pour vos explication
Sûrement un problème d’hébergeur pas assez performant…
bonjour ,
y a t-il des manip a refaire lors des mises à jour WP ou de certains plugin ?
merci!
Aucune vu que ce paramètre peut être déterminé dès l’installation. Les développeurs utilisent une variable globale pour leur retourner le préfixe de la table de sorte que le préfixe est toujours le bon.
Mon hebergeur c’est 1and1
sinon si c’est la faute de l’hebergeur , j’ai plus cas me servire de ma sauvegarde Merci encore
merci pour ce tuto
j’ai lu ici et la, que dans un objectif de securité il est préférable de modifier certain parametres par defaut
ca répond @ ce besoin parfaitement
maintenant faire cette mise à jour est trop risquée vu mes compétences, je ferai attention à la prochaine installation de site
merci
Sebastien
Bonjour,
je cherche desesperement le moyen de gerer ma bdd. Via phpmyadmin ou autre chose. JE n’y arrive pas. J’ai les codes d’acces sr mon wp-config mais ca ne marche pas. aurais tu une idee stp. Oui je suis plus dans le topic mais on sait jamais.
MErci d’avance.
PS: c’est une base par defaut que j’ai je crois: define(‘DB_HOST’, ‘sql3.modules’);
Un plugin sympa http://www.blogtycoon.net/wordpress-plugins/portable-phpmyadmin/
Hello
juste pour vous dire que j’ai également utilisé le lien de Philippe, http://www.seoegghead.com/software/wordpress-table-rename.seo
et c’est parfait, cela créer de nouvelle table (toutes, même celle des plugins) sans modifier les anciennes. (et çà c’est pas mal au cas où un plugin plante… et çà rassure aussi
)
Je ne l’ai pas trouvé sur le site officiel, pourtant il est très efficace !
bonne journée à vous
Merci bien pour l’info !
Par contre à l’avenir, merci d’indiquer un pseudo qui ne corresponde pas au nom du site car ces commentaires finissent généralement dans le spam.
c’est quoi le risque de sécurité de laisser l’essayer avec le préfixe wp_ ?
merci
Bonjour, avant tout très beau site internet et bien complet !
Alors voilà j’ai un petit problème…
Avec le plugin WP-sécurity Scan quand je fais un scan il me trouve rien tout est ok niveau sécurité sauf pour le préfixe wp-
Mais voilà le problème c’est quand je clique sur click here et bien j’ai une belle page avec un beau petit message : vous avez pas assez de permissions pour pouvoir y accéder (ou message similaire..)
Donc je fais comment moi du coup ?
Je suis l’admin du site et le seul alors franchement la je sais pas quoi faire lol
Merci d’avance A+ les amis
Merci pour ton aide.
Les captures d’écran sont vraiment utiles dans une opération aussi délicate
.
Une méthode brutale: après avoir changé le wp-config comme indiqué, sauver la base, l’éditer avec un éditeur, et faire un remplacer wp_ par xxx_
Puis la réinsatller..
J’ai faut?
Merci pour tout
Quel est ton souci ?
Je viens d’essayer comme de cette manière et ça marche très bien.
Bonjour,
Je n’ai pas suivi ce tuto car ai utilisé le plug in WP-SECURITY-SCAN qui le fait automatiquement et très bien. Par contre, je rencontre un problème lié au changement du préfixe dans l’une des fonctionnalités de mon thème dont le fichier php fait appel à ces tables. Le fait de changer le préfixe casse le fonctionnement de ce fichier et n’étant pas très à l’aise en php (j’ai fait des tentatives de remplacement infructueuses en local), je ne sais pas trop comment faire. Si tu vas sur mon site, il s’agit de la page « déjeuner sur-mesure » et c’est tout le contenu des menus qui ne s’affichent plus si je change le préfixe (seules les grandes rubriques s’affichent mais l’intérieur non). Si je t’envoie le fichier en question, pourrais-tu m’aider et m’expliquer comment faire pour modifier le code, stp ? Bien entendu j’ai demandé avant au créateur de mon thème mais qui n’est pas développeur et qui ne sait pas comment faire.
merci beaucoup pour ton aide !
En réalité, ce genre d’erreurs ne devrait pas subvenir dans la mesure où le préfixe ne doit jamais être codé en dur dans le thème. Il y a des variables pour cela.
Pour autant, pourquoi vouloir changer à tout prix le préfixe ? OK, la sécurité est importante mais dans ce cas le changement n’est pas vraiment justifié… ou est-ce pour une autre raison ?
Pour information, toute intervention fait l’objet d’une prestation payante.
Bonjour,
J’installe wordpress avec softaculous (dans mon cpanel), qui me laisse le choix avant l’installation de mettre un autre prefixe que wp_, puis-je le changer avant l’installation de wordpress ou bien la base de données ne sera pas reconnue par wordpress quand ce sera installé et il faudrai que je change les noms dans wp-confing.php et les noms de wp_options et wp_usermeta ?
Merci de votre réponse.
Attention à toutes ces solutions d’installation automatiques. Certaines systèmes ne permettent pas l’accès aux bases de données ou aux mises à jour. Méfiance donc ! D’autant plus que WordPress est vraiment très simple à installer soi-même.
A priori, il n’y a aucun souci à ce que vous indiquiez votre propre préfixe.
Merci pour ce résumé complet et juste : tout à bien fonctionné de mon côté.
J’avais bien plus que 5 champs à reprendre dans la table WP_USERMETA mais pas de grande différence sinon.
Bravo et merci !
Thomas.
Merci beaucoup Aurélien pour votre tuto !
bravo, mais mes faibles connaissances en php, m’ont fait préférer le plugin de philippe
cordialement
Bonjour,
Moi aussi, j’ai eu très peur en procédant à cette modification, car l’écran de mon PHPMyAdmin ne ressemblait pas aux captures d’écran jointes.
A un moment, il m’a indiqué une « error » !!! J’ai fait un retour arrière à l’aide du navigateur, j’espère n’avoir rien abimé !!
J’ai retrouvé mon tableau de bord d’administration et mon site qui semble fonctionner … mais je viens de voir que j’ai « perdu » mon favicon ! Si c’est le seul déga^t, ce n’est pas bien grave.
Tout ça pour dire qu’il faut être très très prudent, et que ce serait bien de préciser (même si on s’en doute) qu’il faut valider les actions pour qu’elles soient effectives.
Et ce serait bien de nous dire ce qu’il faut faire en cas de fausse manip ou comment revenir en arrière.
La règle d’or : toujours faire une sauvegarde de sa base de données ! Après, je ne cache pas que ce type de manipulation est plutôt réservée à des utilisateurs avertis. Mais il faut bien apprendre un jour !
Merci pour cette petite astuce, j’avais changé tout cela à la main en oubliant de renommer les clés dans la table usermeta.
En complément,
quand on a déjà définit plusieurs utilisateurs dans sa table wp_usermeta on se retrouve avec un multiple (correspondant au nombre d’utilisateurs) du nombre d’enregistrements. Il peut alors être un peu fastidieux et source d’erreur de le faire manuellement.
Donc si vous avez un peu d’habitude avec les requêtes MySQL vous pouvez modifier la colonne meta_key avec la requête suivante :
update wp_usermeta set `meta_key` = concat(‘wplabo’,substr(`meta_key`,3)) where `meta_key` like ‘wp_%’
J’ai repris wplabo le préfixe de l’excellent tuto d’Aurélien. La valeur 3 dans l’extraction(substr) de chaine correspond à la longeur de chaine de votre préfixe d’origine (ici wp_ soit une longueur de 3 caractères). Il faut donc penser à mettre la longeur de votre préfixe d’origine s’il ne s’agit par du wp_ par défaut.
Très bonne remarque !
script pour modifier les préfix wp_ dnas la table option et usermeta :
« UPDATE sec_options SET option_name = replace(option_name, ‘wp_’, ‘pref_’);
UPDATE sec_options SET option_name = replace(option_name, ‘WP_’, ‘PREF_’);
UPDATE sec_usermeta SET meta_key = replace(meta_key, ‘wp_’, ‘pref_’); »