Comment ajouter un utilisateur admin à la base de données WordPress via MySQL et phpMyAdmin ?

Lorsque vous n’avez pas d’accès direct au tableau de bord WordPress, il peut être difficile d’ajouter un utilisateur administrateur à votre base de données. Heureusement, si vous avez accès à votre compte cPanel, vous avez également accès à phpMyAdmin. Cette interface est utile pour gérer vos bases de données MySQL et représente une solution vous permettant de créer un utilisateur administrateur lorsque l’accès à WordPress n’est pas disponible. En effet, phpMyAdmin dispose d’une fonction vous permettant l’exécution de commandes SQL, comme celles que nous allons voir ci-dessous ↓

Requêtes MySQL pour l’ajout d’un utilisateur administrateur WordPress

Grâce à phpMyAdmin, vous pourrez vous connecter à votre base de données et lancer ces requêtes MySQL, qui sont nécessaires pour l’ajout d’un utilisateur WordPress auquel vous pourrez ensuite octroyer les droits Super-Administrateur, sans avoir à passer par le tableau de bord WordPress.

Commencez par vous rendre dans votre compte cPanel > phpMyAdmin, comme illustré ci-dessous.

Accéder à phpMyAdmin depuis son Hébergement cPanel

Une fois dans phpMyAdmin, entrez dans la base de données associée au site WordPress pour lequel vous voulez ajouter un utilisateur. Ensuite, en haut d’écran, vous pourrez vérifier que vous êtes bien dans la Base de données > $dbname_1 (voir, capture d’écran ci-dessous).

Utile : Comment retrouver le nom de la database de mon site WordPress ? →

À ce stade, il est recommandé de prendre note du nom de votre table MySQL « wp_users », car le préfixe devrait être différent pour chaque site WordPress, et ce, pour des raisons de sécurité. Une fois cela fait, rendez-vous dans l’onglet « SQL ».

Dans phpMyAdmin, choisir la db, vérifier la table wp_users, ensuite aller dans l'onglet SQL

À l’étape précédente, vous avez dû prendre note du préfix (remplaçant wp_) dans le nom de la table wp_users. Il sera nécessaire de remplacer wp_ par votre propre préfixe via un éditeur de code, dans tous les requêtes MySQL proposées ci-dessous.

INSERT INTO `wp_users` (`user_login`, `user_pass`, `user_nicename`, `user_email`, `user_url`, `user_registered`, `user_activation_key`, `user_status`, `display_name`) VALUES ('easyhoster', MD5('XXX-Set-You-Password-Here-XXX'), 'EasyHoster', 'email@easy-hoster.com', 'https://www.easyhoster.com', '2023-08-15 00:09:00', '', '0', 'EasyHoster');

Veillez à bien personnaliser chacune des valeurs indiquées en gras ci-dessus. Après l’exécution de la requête SQL, vous obtiendrez ainsi un résultat similaire à celui ci-dessous dans phpMyAdmin.

Executer une requête SQL via phpMyAdmin.

Si tout s’est bien passé, vous devriez obtenir un résultat semblable à celui illustré sur la capture ci-dessous.

Exécuter une requête MySQL via phpMyAdmin pour ajouter un utilisateur admin WP.
Attention, avant de quitter cette fenêtre, prenez note de la valeur numérique indiquée à côté de la phrase « Identifiant de la ligne insérée », comme illustré ci-dessus. Si vous avez quitté la fenêtre, rassurrez-vous, nous expliquons ci-dessous comment retrouver cette valeur.

À ce stade, si vous tentiez de vous connecter à votre tableau de bord de WordPress, vous seriez connecté en tant que simple utilisateur. C’est-à-dire, sans les privilèges d’un Super-Administrateur. C’est pourquoi 2 requêtes SQL supplémentaires présentées ci-dessous vont devoir être exécutées.

Pour aller plus loin, nous avons besoin de l’identifiant (ID) de la ligne insérée précédemment dans wp_users. Si vous avez été attentif aux instructions précédente, vous avez déjà pris note de cet identifiant. Sinon, celui-ci peut être retrouvé facilement en navigant via phpMyAdmin, dans la tableau wp_users, comme illustré ci-dessous.

Comment retrouver l'ID de l'utilisateur Admin d'un site WordPress via phpMyAdmin ?

Dans l’exemple illustré ci-dessus, notre ID utilisateur est 3, mais pensez à bien vérifier votre propre ID dans la table wp_users, et adapter les requêtes SQL ci-dessous en conséquence.

Revenez donc sous l’onglet SQL. Copiez les requêtes proposées ci-dessous dans un éditeur de code et modifiez les parties mises en gras en fonction de votre configuration pour ajouter les permissions requises à la table wp_usermeta.

INSERT INTO `wp_usermeta` (`umeta_id`, `user_id`, `meta_key`, `meta_value`) VALUES (NULL, '3', 'wp_capabilities', 'a:1:{s:13:"administrator";s:1:"1";}');
INSERT INTO `wp_usermeta` (`umeta_id`, `user_id`, `meta_key`, `meta_value`) VALUES (NULL, '3', 'wp_user_level', '10');

Concrètement, vous devriez reproduire les opérations suivantes.

Accordez un accès administrateur à l’utilisateur WordPress via phpMyAdmin.

Si tout s’est bien passé, vous devriez obtenir un résultat similaire à celui-ci.

Résultat après avoir accordé des rôles d'administrateur à l'utilisateur WP sur phpMyAdmin.
Enfin connecté au tableau de bord WordPress.
Connexion à WordPress via wp-login-php.

Si vous rencontrez l’erreur :

Error: You do not have sufficient permissions to access this page.

Dans quelques rares cas, dans wp_usermeta, au lieu de la meta_value a:1:{s:13:”administrator”;s:1:”1″;}, il peut être nécessaire de renseigner a:1:{s:13:”administrator”;b:1;}.

Chaque site WordPress est unique et la configuration de ce CMS peut parfois s’avérer complexe.
Lors d’une précédente intervention, nous avons trouvé cette configuration plus haut dans la table correspondante au compte administrateur d’origine. Si vous pensez qu’il vous manque des permissions, vérifiez votre table wp_usermeta et voyez s’il y a d’autres administrateurs précédents pour copier les mêmes valeurs de wp_capabilities et wp_user_level, au cas où elles différeraient des valeurs indiquées ci-dessous.

Supprimer un utilisateur WordPress via phpMyAdmin

En fin d’intervention, pour supprimer l’utilisateur, il vous est possible d’effectuer cette opération en quelques clics via l’interface de phpMyAdmin, comme illustré ci-dessous.

phpMyAdmin se chargera d’exécuter pour vous la requête MySQL suivante :
DELETE FROM wp_users WHERE `wp_users`.`ID` = 3

Delete from WordPress user via phpMyAdmin

Comme vous pouvez le constater, ces opérations nécessitent quelques compétences techniques, notamment en MySQL.

Donc, en cas de difficulté, n’hésitez pas à prendre contacter avec le Support WordPress EasyHoster, qui se fera un plaisir de vous assister pour l’ajout dans votre base de données MySQL d’un Administrateur WordPress via phpMyAdmin.

Sommaire de ce billet
Besoin d'aide ?

Le site WordPress speed.easyhoster.net ➚ permet de tester le potentiel des solutions d'Hébergement Web EasyHoster.