Comment changer un mot de passe Mysql oublié
Ca peut arriver d'oublier le mot de passe
root de mysql, ou reprendre en main un serveur d'un ancien administrateur ayant
quitté l'entreprise un peut rapidement. Donc je vous présente ici comment
changer le mot de passe root d'un serveur mysql.
Première chose, on arrête mysql :
/etc/init.d/mysql stop
Ensuite redémarrez mysql avec l'option skip-grant-tables pour désactiver les logins/pass, et skip-networking pour éviter les connexions TCP/IP. Note : attention lors de cette commande, n'importe quelle personne ce connectant à l'aide des sockets aura un accès total à la base!!!
/usr/sbin/mysqld --skip-grant-tables --skip-networking --user=root &
Ensuite connectez vous avec le client mysql
mysql Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 330933 Server version: 5.0.38 Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql>'
Sélectionnez la base mysql ou sont inscrit les tables des privilèges
mysql> USE mysql Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed
Tapez ensuite la commande suivante en remplaçant "password" par celui souhaité :
mysql> UPDATE user
-> SET password=password("password")
-> WHERE user="root";
Query OK, 2 rows affected (0.00 sec)
Rows matched: 2 Changed: 2 Warnings: 0
Appliquez les changements de privilèges :
mysql> flush privileges; Query OK, 0 rows affected (0.00 sec)
Sortez du client mysql:
mysql> exit
Redémarrez le serveur :
/etc/init.d/mysql restart
Delicious


Commentaires
merci !
mais autre petite question , dans le meme type : comment donner les droit de connection a partir d'un autre poste @% ..; ?
Merci! Vous venez de me faire gagner beaucoup de temps je crois
De rien C'est le but
Johan
salut
dans quel fichier de conf le mot de passe et les utilisateurs sont notés?
merci!
mais là je m'aperçois qu'on peut changer le mdp du compte root de MySql sans être root du système linux, ce n'est pas très sécurisé tout ça :/
@Fred : il faut être root pour arrêter le processus et le redémarrer en bypassant les sécurité et réseau
Bonjour,
Je dois être retardé ou quelque chose dans le genre parce que j'ai fait plusieurs forums mais une information très basique me manque.
Quand vous dites "faire /etc/init.d/mysql stop" je le fais où ça? j'ouvre un ficher texte je tape ça et je le met dans mon serveur? ou je le tape dans les commandes SQL de PHPmyadmin? ou bien je dois l'exécuter dans Terminal? C'est peut être le chemin d'un fichier qui est dans l'arborescence de mon serveur??? C'est pas toujours évident d'être autodidacte........
Tout éclaircissement sera très apprécié!!!
William
Bonjour Billy,
cette commande doit être lancé en ligne de commande sur ton serveur linux.
Si tu as besoin d'une presta, n'hésite pas à me contacter par email (en haut à droite)
Johan
Merci Johan!
J'irai me coucher moins bête!!!!!
a++