Mysql + root + perte + mot de passe = bévue

mercredi 1er avril 2009, par Minimalteck

"Un doute m’assaille… Qu’avais-je donc pu assigner comme mot de passe à notre bien-aimé utilisateur root MySQL sur vieux-bazard-poussiéreux ?"
Après avoir testé une bonne vingtaine de vos mots de passe fétiches [1], la réalité prend le pas sur votre optimisme habituel, vous poussant à exprimer haut et fort votre total désapointement face à cette situation ubuesque :
"Peste soit de ce fâcheux contre-temps !"

Heureusement, une solution toute simple s’offre à vous…

- Étape 1 [2] : arrêter le serveur Mysql /etc/init.d/mysql stop

- Étape 2 : redémarrer le serveur Mysql
Oui ! mais pas n’importe comment wink mysqld --skip-grant-tables --skip-networking & Ces options forcent le serveur à ne pas utiliser le système de privilège du tout… mais à ne pas accepter de connexions TCP/IP du tout non plus !

- Étape 3 : on change tout
Ensuite on se connecte au serveur et on sélectionne la base mysql : $ mysql -u root mysql On change le mot de passe root

mysql> UPDATE user SET Password=PASSWORD('newpassroot') WHERE User='root';

On recharge les privilèges puis on quitte

mysql> FLUSH PRIVILEGES;
mysql>exit

- Étape 3bis ou 4, au choix
On redémarre Mysql /etc/init.d/mysql restart

P.-S.

Si cette recette n’a pas marché chez vous… essayez sans vos mouffleswink

Notes

[1] si la machine n’a pas été installé par vos soins… le premier test à effectuer est l’abscence abhérente mais possible du mot de passe root,
Ne riez pas, cela m’est arrivé pas plus tard qu’hier sur la machine d’un client blink

[2] Étape avant l’étape 1 : Vérifiez dans le répertoire du super-utilisateur s’il n’y a pas un fichier d’options utilisateur qui traîne… ls -a /root | grep '.my.cnf' ou encore sortez le canon tue-mouches pour faire croire que votre tâche est difficile test -e '/root/.my.cnf' &&  more /root/.my.cnf || echo 'Le système se voit au regret de vous informer que le fichier demandé est inexistant !'
En effet, ce type de fichier peut stocker les paramètres de connexions sous la forme


[client]
host=localhost
user=root
password=mot_de_passe_root

"Ah, c’est pour ça que j’arrive pas à me connceter moi… j’en n’ai pas"…"
"Euh, non toi c’est à cause de tes mouffles"…closedeyes
"des mouffles ??? ben, j’en ai pas non plus…"confused1

SPIP | squelette | | Plan du site | Suivre la vie du site RSS 2.0