Pour pouvoir modifier le mot de passe root de MySQL, il faut pouvoir s’y connecter, Or, si vous n’avez pas le mot de passe root actuel, vous vous retrouvez alors dans une situation difficile à résoudre. Heureusement, il est possible de se connecter à MySQL en échappant à la phase d’authentification.
# 1 : Stopper mysql
/etc/init.d/mysql stop
Affichage :
Stopping MySQL database server: mysqld.
# 2: Démarrer mysql sans contrôle des mots de passe:
mysqld_safe --skip-grant-tables &
Affichage:
Starting mysqld daemon with databases from /var/lib/mysql
mysqld_safe[xxxx]: started
# 3: Connexion sur mysql:
mysql -u root
Affichage:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1 to server version: ....
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>
# 4: Changement du mot de passe root
use mysql; update user set password=PASSWORD("nouveau mot de passe") where User='root'; flush privileges; quit
# 5: Arret de MySQL:
/etc/init.d/mysql stop
Affichage:
Stopping MySQL database server: mysqld
STOPPING server from pid file /var/run/mysqld/mysqld.pid
mysqld_safe[xxx]: ended
# 6: Redémarrage de MySQL
/etc/init.d/mysql start mysql -u root -p
Entrez votre nouveau mot de passe, et vous dites YES !