Modifier le mot de passe root MySQL
Guide pour mettre à jour ou réinitialiser le mot de passe de l'utilisateur root MySQL.
La gestion des bases de données MySQL est une tâche courante lors de l'administration de sites web et d'applications sur VPS ou serveurs dédiés. Il est important de savoir comment modifier le mot de passe root ou récupérer l'accès en cas de perte.
Modifier le mot de passe root MySQL (si vous connaissez le mot de passe actuel)
- Connectez-vous au serveur via SSH.
- Connectez-vous à MySQL en tant que root :
mysql -u root -p
Saisissez le mot de passe actuel et appuyez sur Entrée.
- Exécutez la commande suivante pour modifier le mot de passe (remplacez
newpasspar votre nouveau mot de passe) :
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');
FLUSH PRIVILEGES;
quit
Le mot de passe a été mis à jour avec succès.
Réinitialiser le mot de passe root MySQL (si le mot de passe est perdu)
Si le mot de passe root est inconnu, démarrez MySQL en mode sans échec sans vérification de l'authentification.
Ubuntu / Debian
- Arrêtez le service MySQL :
sudo systemctl stop mysql
- Créez le répertoire PID s'il n'existe pas :
sudo mkdir -p /var/run/mysqld
sudo chown mysql:mysql /var/run/mysqld
- Démarrez MySQL en mode sans échec :
sudo mysqld_safe --skip-grant-tables --skip-networking &
- Connectez-vous sans mot de passe :
mysql -u root
- Réinitialisez le mot de passe (remplacez
new_root_passwordpar votre nouveau mot de passe) :
FLUSH PRIVILEGES;
USE mysql;
UPDATE user SET authentication_string=PASSWORD('new_root_password') WHERE User='root';
UPDATE user SET plugin='mysql_native_password' WHERE User='root';
FLUSH PRIVILEGES;
quit
- Arrêtez le processus en mode sans échec et redémarrez MySQL :
sudo pkill mysqld
sudo systemctl start mysql
- Testez la connexion avec le nouveau mot de passe :
mysql -u root -p
CentOS 7 / RHEL 7
- Arrêtez le service MySQL :
sudo systemctl stop mysql
- Démarrez MySQL en mode sans échec :
sudo mysqld_safe --skip-grant-tables &
- Connectez-vous sans mot de passe :
mysql -u root
- Réinitialisez le mot de passe (remplacez
new_root_passwordpar votre nouveau mot de passe) :
USE mysql;
UPDATE user SET password=PASSWORD('new_root_password') WHERE User='root';
FLUSH PRIVILEGES;
quit
- Redémarrez MySQL :
sudo systemctl stop mysqld
sudo systemctl start mysqld
- Testez la connexion avec le nouveau mot de passe :
mysql -u root -p
Remarques utiles
- Après la réinitialisation, il est recommandé de mettre à jour le mot de passe dans votre panneau de contrôle ou votre application avec quelque chose de plus sécurisé.
- Pour MySQL 8.0+ — utilisez
ALTER USER 'root'@'localhost' IDENTIFIED BY 'newpass';à la place dePASSWORD(). - Effectuez toujours une sauvegarde de vos bases de données avant d'apporter des modifications.
Nos produits et services
Aide
Une question ou besoin d'un coup de main ? Écrivez-nous via le système de tickets — nous sommes toujours là pour vous aider !