Réinitialiser le mot de passe root de MySQL

Il est possible de se connecter à MySQL en échappant à la phase d’authentification habituelle. C’est la solution ultime si vous avez perdu votre mot de passe root et que vous ne pouvez plus gérer votre SGBD.

Tout d’abord on arrête le serveur en lignes de commandes :

/etc/init.d/mysql stop

On redémarre ensuite MySQL en passant outre l’identification (–skip-grant-tables) et en désactivant l’écoute du réseau (–skip-networking). Cela permet d’éviter d’être piraté à ce moment précis où MySQL est vulnérable.

mysqld --skip-grant-tables --skip-networking &

Ensuite, on se connecte au serveur MySQL qui ne demandera donc pas de mot de passe…

mysql -u root

Ne reste enfin qu’à mettre à jour le mot de passe root via la commande MySQL UPDATE

UPDATE user SET password=PASSWORD('nouveaumotdepasse') WHERE user="root";

Enfin, on recharge les permissions pour prendre en compte les changements

flush privileges;

Relativisons tout de même cette technique. Sans plus de précautions sur votre serveur, certes vous venez de sortir d’une mauvaise passe, mais vous laissez en permanence la possibilité pour un intrus de prendre la main sur votre base de données. Attention donc à bien toujours sécuriser votre SSH.

, , ,

  1. Laisser un commentaire

Répondre

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Gravatar
Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Twitter picture

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Connexion à %s