Stay tuned
Perte du Mot de Passe de l'utilisateur ROOT de Mysql
Posted by M. declercq on Jul. 6 2006, page edited by M. declercq on Mar. 24, (popular)
Tags: mysql root
Cette astuce s'adresse à ceux qui on perdu le mot de passe de l'utilisateur 'root' du Serveur Mysql et qui n'arrivent plus à se connecter. Elle permet de se connecter au moniteur SQL sans utiliser la table des privilèges utilisateurs afin de pouvoir attribuer un nouveau mot de passe au compte 'root' du Serveur Mysql.
Informations préliminaires
Toutes les commandes évoquées dans cette astuce doivent êtres exécutées avec les privilèges de l'utilisateur root ( administrateur système ).Modification du mot de passe de l'utilisateur root (sql)
1. On se connecte en tant qu'utilisateur root :sudo -s2. On stop le Serveur Mysql :
/etc/init.d/mysql stop3. On lance le Serveur Mysql sans tenir compte des privilèges utilisateurs :
/usr/sbin/mysqld --skip-grant-tables &Normalement, après avoir exécuté cette dernière commande, vous devriez obtenir ce genre de sortie :
[1] 19729Dès à présent, vous devez presser sur la touche Enter pour obtenir le prompt. 4. On lance le Moniteur SQL :
root@oceane:~# 060706 19:03:26 InnoDB: Started; log sequence number 0 43655
060706 19:03:26 [Note] /usr/sbin/mysqld: ready for connections.
Version: '5.0.22-Debian_0ubuntu6.06-log' socket: '/var/run/mysqld/mysqld.sock' port: 3306 Debian Etch distribution
mysql mysqlVous devriez obtenir la sortie suivante :
Reading table information for completion of table and column names5. On exécute une requête pour mettre le mot de passe de l'utilisateur root mysql à jour :
You can turn off this feature to get a quicker startup with -A
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 1 to server version: 5.0.22-Debian_0ubuntu6.06-log
Type 'help;' or 'h' for help. Type 'c' to clear the buffer.
mysql>
update user set password=PASSWORD("YOUR_PASSWORD") where user='root';
Note : Vous devez remplacer YOUR_PASSWORD par le mot de passe de votre choix.La requête SQL étant exécutée, vous devriez obtenir ce genre de sortie :
Query OK, 1 rows affected (0.04 sec)6. On quitte le moniteur SQL :
Rows matched: 1 Changed: 1 Warnings: 0
quit7. On tue les processus du serveur Mysql :
killall mysqldvous devriez obtenir ce genre de sortie :
040313 2:08:21 /usr/sbin/mysqld: Normal shutdown8. On re-démarre le Serveur Mysql normalement :
040313 2:08:21 /usr/sbin/mysqld: Shutdown Complete
[1] + done /usr/sbin/mysqld --skip-grant-tables
/etc/init.d/mysql start
Cette astuce a été testée avec succès sur un système exploitant la distribution Ubuntu Dapper Drake (6.06 LTS) et le Serveur Mysql-5.0.
Les commandes à exécuter peuvent différer selon la distribution utilisée.
Une erreur, une incompréhension concernant cette astuce ? N'hésitez pas à utiliser la fonction commentaire de notre portail et/ou à nous joindre directement en utilisant notre formulaire contact : Nous contacter
Par M. Laurent DECLERCQ
V.1.1 build 20080324.0600