- Connectez-vous en tant que root à la machine Windows ou de type Unix (Unix, Linux ou BSD) avec le serveur MySQL.
- Arrêtez le serveur MySQL à l'aide de l'une des commandes suivantes :
Linux :
/etc/rc.d/init.d/mysql stop
FreeBSD :
/usr/local/etc/rc.d/mysql-server.sh stop
- Ouvrez le script de démarrage du serveur mysql (c'est-à-dire mysql-server.sh ou mysql qui est le fichier exécuté pour démarrer ou arrêter le serveur MySQL).
- AJOUTER –skip-grant-tables à la fin de la ligne qui contient le mysqld_safe commande comme paramètre.
- Démarrez le serveur MySQL avec la commande suivante :
Linux :
/etc/rc.d/init.d/mysql start
FreeBSD :
/usr/local/etc/rc.d/mysql-server.sh start
- Vous pouvez également démarrer le serveur MySQL directement et ignorer la modification avec la commande suivante (si vous utilisez cette étape, vous n'avez pas besoin de modifier le script de démarrage MySQL) :
mysqld_safe --skip-grant-tables &
En fonction de votre environnement de chemin, vous devrez peut-être pointer vers le bon répertoire où se trouve mysqld_safe.
- Exécutez les commandes suivantes pour vous connecter en tant qu'utilisateur mysql et vous connecter à la base de données des utilisateurs/autorisations mysql :
# mysql -u root mysql
- Exécutez les requêtes de mise à jour pour modifier le mot de passe MySQL :
mysql> UPDATE user SET Password=PASSWORD('newrootpassword') WHERE User='root'; mysql> FLUSH PRIVILEGES;
Remarque :Remplacez newrootpassword avec le nouveau mot de passe root pour le serveur MySQL. Flush Privileges est nécessaire pour que le changement de mot de passe prenne effet immédiatement.
- Quittez le client de base de données mysql en tapant exit .
- Arrêtez le serveur MySQL avec les commandes répertoriées à l'étape 2.
- Ouvrez à nouveau la modification du script de démarrage du serveur mysql à l'étape 3 et SUPPRIMEZ les –skip-grant-tables paramètre qui a été ajouté.
- Démarrez le serveur MySQL à l'aide de la commande de l'étape 5 ou 6.
Pour les utilisateurs de Redhat Linux, utilisez les instructions suivantes en tant qu'utilisateur racine de la machine Redhat Linux :
- Arrêtez le processus MySQL en utilisant la commande :
# killall mysqld
- Démarrez le serveur MySQL avec les options suivantes :
# /usr/libexec/mysqld -Sg --user=root &
- Démarrez le client MySQL :
# mysql
Vous devriez voir le message suivant :
Bienvenue dans le moniteur MySQL. Les commandes se terminent par; ou g.
Votre identifiant de connexion MySQL est 1 à la version du serveur :3.xx.xxTapez 'help;' ou 'h' pour obtenir de l'aide. Tapez 'c' pour vider le tampon.
mysql>
- Utiliser la base de données mysql :
mysql> USE mysql
Vous devriez voir le message suivant :
Lecture des informations de table pour compléter les noms de table et de colonne
Vous pouvez désactiver cette fonctionnalité pour obtenir un démarrage plus rapide avec -ABase de données modifiée
- Ensuite, mettez à jour le mot de passe de l'utilisateur root avec la commande suivante :
UPDATE user SET password=password("newpassword") WHERE user="root";
Remplacez nouveaumotdepasse avec le mot de passe souhaité. Vous devriez voir le message suivant :
Requête OK, 2 lignes affectées (0,03 seconde)
Lignes correspondantes :2 modifiées :2 avertissements :0Les lignes affectées peuvent être différentes, mais la requête OK devrait être là.
- Videz les privilèges de la base de données pour la recharger afin que les modifications soient effectives :
mysql> flush privileges;
Vous devriez obtenir le résultat suivant :
Requête OK, 0 lignes affectées (0.02 sec)
- Quitter le client MySQL en tapant exit .
- Tuez le processus du serveur MySQL en tapant killall mysqld .
- Ensuite, redémarrez MySQL :
/etc/init.d/mysqld start