Par défaut, WordPress est d’une logique implacable. Lorsque vous l’installez, il attribue le préfixe _wp à toutes les tables de votre base de données. WP comme… WordPress, eh oui. 

En même temps, il n’allait pas appeler ce préfixe  _wix ou _shopify. Vous imaginez ?

Un homme se penche en arrière.
Non, on n’imagine pas du tout…

Reprenons notre sérieux. Le souci avec ce préfixe de deux lettres qui passe assez inaperçu, c’est qu’il rend votre site plus vulnérable aux attaques pirates, car il est connu comme le loup blanc !

Si vous souhaitez renforcer la sécurité de votre installation WordPress, vous allez devoir modifier ce préfixe des tables de votre base de données.

À la fin de cet article, vous saurez pourquoi et comment faire, à l’aide de trois méthodes pratiques adaptées à tout type de profil : du débutant à l’utilisateur plus aguerri.

Allez, on y va tout de suite !

Hébergez votre site chez o2switch

Faites comme WPMarmite, choisissez o2switch. Non seulement les performances sont au rendez-vous mais le support est exceptionnel.

ESSAYEZ O2SWITCH
o2switch

Pourquoi modifier le préfixe des tables de la base de données sur WordPress ?

La raison principale est liée à la sécurité de votre site. Lorsque vous installez WordPress sur votre serveur d’hébergement, vous le liez à une base de données.
Cette base de données comporte 12 tables au préfixe évocateur, donc : wp_.

Si, comme WPMarmite, vous utilisez l’hébergeur o2switch (lien aff), notez que le préfixe de la base de données est changé automatiquement lors de l’installation manuelle.

Le souci, c’est que ce préfixe par défaut ouvre grand la porte aux hackers. Comme il est très facilement identifiable, les pirates et robots malveillants n’ont plus qu’à tenter de deviner l’identifiant de votre base de données pour tenter d’effectuer différents types d’actions pour vous nuire, comme par exemple :

  • l’ajout de liens et de commentaires spam ;
  • faire planter votre site ;
  • récupérer des données personnelles issues d’un formulaire, ou suite à un achat (coordonnées bancaires).

Techniquement, ils exécutent ce que l’on appelle des injections SQL afin de récupérer des informations contenues dans votre base de données.

Vous avez saisi : mieux vaut protéger votre base de données ! Il s’agit de l’élément le plus important de votre site, car elle renferme tous ses contenus :

  • vos articles ;
  • vos pages ;
  • les réglages de vos plugins ;
  • les commentaires ;
  • les révisions ;
  • les options du site, etc.

Je vous laisse imaginer la suite : si votre base de données se fait pirater, vous perdez tout. D’où l’importance de changer ce fameux préfixe des tables.

Un chat met des lunettes.

Recommandations avant de changer le préfixe de la base de données

Sauvegardez votre site

Avant de vous jeter à l’eau, je vous recommande d’abord de sauvegarder votre site (fichiers + base de données, bien sûr).

Plusieurs moyens sont à votre disposition pour cela. Vous pouvez soit opter pour :

  • un plugin de sauvegarde comme UpdraftPlus. Pensez à automatiser vos sauvegardes et à les envoyer vers un espace de stockage tiers ;
  • un outil de maintenance comme WP Umbrella (lien aff) ou ManageWP ;
  • un service de sauvegarde proposé par votre hébergeur. o2switch propose par exemple un outil appelé JetBackup sur l’interface cPanel. Grâce à lui, vous pouvez accéder aux sauvegardes effectuées sur votre hébergement web et les restaurer (par contre, vous ne pouvez pas en lancer de nouvelles ou les programmer).

En ayant assuré vos arrières, vous pourrez facilement restaurer votre site en cas de problème lors de la modification du préfixe des tables de votre base de données WordPress.

Utilisez un site de test

Toujours dans un souci de protéger votre site d’une erreur ou d’un bug, je vous conseille de ne pas changer le préfixe des tables sur un site en production (déjà en ligne).

Pour plus de tranquillité, effectuez vos opérations sur un site de test. Travaillez au choix sur :

  • un environnement local avec l’outil… Local, par exemple ;
  • un site de staging à l’aide d’une extension dédiée comme WP STAGING. Vous pouvez aussi créer un site de préproduction chez votre hébergeur, s’il dispose de cette option. Chez o2switch, c’est possible grâce à l’outil WP Tiger.
Bannière de WP STAGING WordPress Backup Plugin – Migration Backup Restore

Si le changement du préfixe de la base de données se passe bien, vous n’aurez plus qu’à effectuer le changement en ligne, sans crainte de tout casser.

Allez, à présent, il est temps de mettre les mains dans le cambouis. Prêt à vous retrousser les manches ?

3 méthodes pour modifier le préfixe des tables de la base de données de WordPress

Méthode 1 : Trouver un nouveau préfixe dès l’installation de WordPress

Par défaut, WordPress attribue donc le préfixe wp_ aux tables de votre base de données lors de l’installation du CMS (Content Management System).

Cependant, rien ne vous empêche d’aller dans son sens. 😉 Vous pouvez modifier ce préfixe des tables de la base de données dès l’installation de vos prochains sites. Comme ça, tout est clair dès le départ.

Besoin d’aide pour installer WordPress ? Consultez notre tutoriel dédié qui vous montre comment faire étape par étape.

Lorsque vous devrez lier votre site à sa base de données créée précédemment, entrez tout simplement le préfixe de votre choix dans la case intitulée « Préfixe des tables » :

Modification du préfixe des tables de la base de données lors de l'installation de WordPress.

Voici quelques conseils pour créer un préfixe des tables efficace et difficilement identifiable :

  • ne vous servez pas d’un préfixe qui commence par wp_, même s’il contient ensuite des chiffres et des lettres (ex : wp_ryu7923ecx_) ;
  • évitez les préfixes trop communs comme ceux commençant par votre prénom, le nom de votre animal de compagnie, love ou 1234 ;
  • mettez quelque chose de plus compliqué, voire incompréhensible, à la place de wp_. Pour bien faire, utilisez une combinaison de chiffres et de lettres (ex : dgh47yz_).
  • appuyez-vous sur ce site bien pratique pour générer des mots de passe forts automatiquement, que vous utiliserez comme préfixes pour modifier les tables de vos bases de données.

Méthode 2 : Utiliser un plugin pour modifier le préfixe des tables de la base de données de WordPress

Vous n’avez pas modifié le préfixe de vos tables lors de l’installation ? Ne vous affolez pas, on passe à la solution n°2 pour rectifier le tir.

Dans cette situation, le plus simple pour un débutant consiste à utiliser une extension.

La plus célèbre du répertoire officiel sur le sujet (en plus d’être très bien notée) s’appelle Brozzme DB Prefix & Tools Addons. Elle fera très bien l’affaire.

Bannière de Brozzme DB Prefix & Tools Addons

Pensez absolument à sauvegarder votre base de données avant d’utiliser le plugin. On ne sait jamais : en cas de bug ou de problème de connexion, votre site pourrait planter.

Voici comment la paramétrer en deux étapes.

Étape 1 : Installer et activer Brozzme DB Prefix & Tools Addons

Sur votre interface d’administration WordPress, allez dans Extensions > Ajouter. Dans la barre de recherche, tapez le nom de l’extension. Puis installez-la et activez-la :

Installation de l'extension Brozzme.

Étape 2 : Modifier le préfixe de la base de données

Dirigez-vous maintenant sur l’interface de réglages de l’extension, à partir du menu Outils > DB Prefix.

Au niveau de l’onglet appelé « Change DB Prefix », entrez le préfixe de votre choix dans la case située à côté de « Nouveau préfixe ».

L’extension se chargera toute seule de mettre à jour votre base de données, ainsi que les informations contenues dans votre fichier wp-config.php.

Modification du préfixe des tables de la base de données avec Brozzme DB Prefix.

Si un message d’erreur s’affiche, c’est probablement parce que votre fichier wp-config.php n’est pas accessible en écriture ou que votre base de données ne dispose pas des droits ALTER, comme l’indique l’extension.

Terminez en cliquant sur le bouton bleu « Change DB Prefix », et le tour est joué ! Pour vérifier que vous avez correctement modifié le préfixe des tables de la base de données, naviguez sur l’interface visible de votre site (front-end).

Toutes les pages s’affichent correctement ? Alors c’est tout bon !

Méthode 3 : Changer le préfixe des tables avec phpMyAdmin

Vous avez un minimum de compétences techniques et n’avez pas peur de mettre les mains dans le code ? Ou vous ne souhaitez tout simplement pas ajouter un plugin supplémentaire sur votre site WordPress ?

Dans ce cas, la méthode manuelle est sûrement faite pour vous. Justement, découvrez comment changer le préfixe des tables de votre base de données WordPress à l’aide de phpMyAdmin.

phpMyAdmin est une application web pour gérer votre base de données. Elle est disponible sur cPanel, un gestionnaire en ligne qui administre tout le serveur chez de nombreux hébergeurs.

Par contre, je vous préviens, cette méthode est plus périlleuse que les deux précédentes. Alors comme d’habitude, sauvegardez d’abord votre site (fichiers + base de données) avant de vous y mettre.

Tout de suite, voici la marche à suivre détaillée, point par point.

Étape 1 : Modifier le préfixe des tables de la base de données dans le fichier wp-config.php

Pour commencer, ajoutez le nouveau préfixe de votre choix dans votre fichier wp-config.php, qui contient les configurations de base de votre site (et vos identifiants de base de données).

En parlant de ça, où se trouve le fichier wp-config.php ? Vous le localiserez dans le répertoire racine de votre site.

Afin de l’identifier, connectez-vous par exemple à votre client FTP favori. Pour les besoins de ce test, je vais me servir de FileZilla, qui est gratuit.

Rendez-vous maintenant à la racine de votre site, qui portera un nom différent en fonction de votre hébergeur. Chez o2switch, le répertoire racine porte le nom de public_html. Si vous êtes chez OVH, ce sera www.

Puis, au niveau de la ligne $table_prefix, entrez votre nouveau préfixe (xjh5g7j8_ dans l’exemple ci-dessous) :

Modification du préfixe des tables de la base de données dans le fichier wp-config.php.

Étape 2 : Modifier le nom de vos tables sur phpMyAdmin

À présent, vous devez remplacer le préfixe de toutes vos tables (le fameux wp_) par celui que vous venez de renseigner dans votre fichier wp-config.php.

Pour cela, vous allez utiliser phpMyAdmin. Vous accéderez à son interface directement depuis votre interface cPanel (si votre hébergeur propose ce gestionnaire en ligne).

Lorsque vous êtes connecté sur cPanel, cliquez sur « phpMyAdmin » dans l’encart « Bases de données » :

Connexion à phpMyAdmin sur l'interface cPanel.

Sélectionnez la base de données de votre choix sur la gauche, et entrez les requêtes SQL suivantes dans l’onglet SQL (remplacez xxx par le nouveau préfixe choisi, c’est-à-dire par xjh5g7j8_ dans mon exemple) :

Rename table wp_commentmeta to xxx_commentmeta;
Rename table wp_comments to xxx_comments;
Rename table wp_links to xxx_links;
Rename table wp_options to xxx_options;
Rename table wp_postmeta to xxx_postmeta;
Rename table wp_posts to xxx_posts;
Rename table wp_termmeta to xxx_termmeta;
Rename table wp_terms to xxx_terms;
Rename table wp_term_relationships to xxx_term_relationships;
Rename table wp_term_taxonomy to xxx_term_taxonomy;
Rename table wp_usermeta to xxx_usermeta;
Rename table wp_users to xxx_users;

Requêtes SQL effectuées sur phpMyAdmin.

Certains plugins (ex : Yoast SEO, Imagify) ajoutent leurs propres tables personnalisées dans votre base de données. Pensez aussi à les remplacer avec votre nouveau préfixe.

Étape 3 : Modifier la table wp_options

Ça va, toujours là ? Dans un troisième temps, vous allez modifier la table wp_options. Cette dernière contient toutes les options de votre site, celles contenues dans le menu « Réglages » de votre administration WordPress.

Oui mais… En modifiant le préfixe des tables, vous n’avez plus les droits suffisants pour accéder à l’administration de votre site.

Pour pallier ce problème, double-cliquez sur la table wp_options. Dans la colonne option_name, localisez le champ wp_user_roles.

Double-cliquez dessus, et remplacez-le par xxx_user_roles (remplacez xxx par le nouveau préfixe choisi, c’est-à-dire par xjh5g7j8_).

La table wp_user_roles.

Étape 4 : Modifier la table wp_usermeta

Pour terminer, modifiez la table wp_usermeta. Dans la colonne meta_key, remplacez tous les anciens préfixes wp_ par les nouveaux.

Pour vous faciliter la tâche, vous pouvez cliquer sur la colonne meta_key pour filtrer par ordre alphabétique :

Modification de la table wp_usermeta.

Étape 5 : Tester votre site

Afin de vérifier la bonne mise en œuvre des changements, naviguez sur les pages de votre site. Tout s’affiche correctement ? La modification du préfixe de votre base de données a fonctionné.

Vous rencontrez des problèmes et ne pouvez plus accéder à votre site ? Vous avez sûrement oublié de modifier le préfixe d’une ou plusieurs tables. Retournez sur phpMyAdmin et procédez à des vérifications.

En cas d’erreur de connexion à la base de données, référez-vous à notre article dédié pour la résoudre.

En résumé

Tout au long de cet article, vous avez découvert pourquoi et comment modifier le préfixe des tables de la base de données de WordPress de trois façons différentes :

  • lors de l’installation initiale de WordPress ;
  • avec le plugin Brozzme DB Prefix & Tools Addons ;
  • à l’aide de phpMyAdmin.

Quelle que soit la méthode que vous choisirez, vous bénéficierez d’un site plus sécurisé. Cependant, ne vous arrêtez pas en si bon chemin.

Pour protéger encore plus votre installation WordPress, pensez au minimum à activer une extension de sécurité généraliste comme SecuPress, iThemes Security ou Wordfence.

Si vous souhaitez bénéficier de conseils supplémentaires en matière de sécurité (et les appliquer sur votre site), je ne peux que vous conseiller de visionner la série Le Point Sécu sur la chaîne YouTube de WPMarmite :

De votre côté, avez-vous des retours d’expérience à nous partager lorsque vous avez modifié le préfixe des tables de WordPress ? Vous apprêtez-vous à le faire ? Dites-moi tout dans les commentaires.