Serveur dédié : réinitialiser le mot de passe root d’un serveur MySQL ou MariaDB

Pour les besoins d’un de mes clients préférés, j’ai eu la grande joie de paramétrer un VPS aux petits oignons avec réplication des données à la volée.

C’est un projet fascinant que j’ai déjà abordé dans la série réplication de données.

Serveur dédié : réinitialiser le mot de passe root d'un serveur MySQL ou MariaDB photo

Au moment de la réalisation des bases de données, je demande à mon client le mot de passe root du serveur de base de données pour y créer de nouveaux utilisateurs. La réponse ne se fait pas attendre : « je n’ai pas ce mot de passe mais j’ai confiance en toi Matt, tu pourras aisément contourner le problème! ».

Challenge accepted.

Voici donc un mini-tutoriel pour réinitialiser le mot de passe root quand vous ne l’avez jamais eu vous en souvenez plus.

Vous aurez besoin de deux fenêtres de terminal, que je nomme ici terminal1 et terminal2.

Kinsta: Premium Managed WordPress hosting

Etape 1 : lancer mysqld_safe

Voici le principe de la manipulation : nous allons « occuper » le serveur MySQL ou MariaDB en lançant le daemon mysqld_safe dans un terminal et nous allons lancer un second terminal qui nous permettre de réinitialiser le mot de passe root.

C’est parti : dans le terminal1, nous commençons par arrêter le serveur SQL:

service mysql stop

puis lançons mysqld_safe :

mysqld_safe --skip-grant-tables --skip-syslog --skip-networking

Le terminal semble arrêté ou attendre quelque chose : c’est bon signe, laissez-le comme ça pour le moment.

Etape 2 : réinitialisation du mot de passe root

Nous passons à la seconde étape et, dans le terminal2, nous ouvrons une session root sur le serveur SQL :

mysql -u root

Boum, on ne nous demande aucun mot de passe, grâce à la commande passée dans le terminal1. Nous en profitons donc pour changer le mot de passe de l’utilisateur root avec :

UPDATE mysql.user SET Password=PASSWORD('$M€GA*.*pwd4mariaDB-SQL2017*') WHERE User='root';Langage du code : JavaScript (javascript)

et appliquons les changements :

FLUSH PRIVILEGES;

On quitte la session SQL :

exit,Langage du code : PHP (php)

et, toujours dans le terminal2, on quitte proprement la session mysqld_safe:

mysqladmin -u root -p shutdown

Entrez votre nouveau mot de passe root pour le serveur SQL. Boom, vous venez de fermer la session mysqld_safe du terminal1.

Il ne vous reste plus qu’à relancer le serveur SQL:

service mysql start

Et voilà, vous venez de changer le mot de passe root de votre serveur de base de données en moins de 3 minutes.

Demandez à l'IA son opinion
Gravatar for Matt Biscay

Je suis Matt Biscay, développeur WordPress & WooCommerce certifié chez Codeable, administrateur système et enseignant.

J’aide les entreprises à créer, optimiser et fiabiliser leurs sites WordPress avec une approche technique propre : performance, sécurité, maintenance, développement sur mesure et résolution de problèmes complexes.

Sur Skyminds, je partage des tutoriels WordPress, WooCommerce, Linux et administration système, avec des solutions testées sur des cas réels et pensées pour durer.

Découvrez mes services WordPress et WooCommerce.

Laisser un commentaire