Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment réinitialiser le mot de passe racine MySQL ou MariaDB sous Linux

Si vous configurez un serveur de base de données MySQL ou MariaDB pour la première fois, il est probable que vous exécuterez mysql_secure_installation peu de temps après pour implémenter les paramètres de sécurité de base.

L'un de ces paramètres est le mot de passe du compte racine de la base de données - que vous devez garder privé et utiliser uniquement lorsque cela est strictement nécessaire. Si vous oubliez le mot de passe ou devez le réinitialiser (par exemple, lorsqu'un administrateur de base de données change de rôle ou est licencié !).

Lecture suggérée : Modifier le mot de passe racine MySQL ou MariaDB

Cet article vous sera utile. Nous expliquerons comment réinitialiser ou récupérer le mot de passe racine MySQL ou MariaDB oublié sous Linux.

Bien que nous utiliserons un serveur MariaDB dans cet article, les instructions devraient également fonctionner pour MySQL.

Récupérer le mot de passe racine MySQL ou MariaDB

Pour commencer, arrêtez le service de base de données et vérifiez l'état du service, nous devrions voir la variable d'environnement que nous avons définie précédemment :

------------- SystemD ------------- 
# systemctl stop mariadb

------------- SysVinit -------------
# /etc/init.d/mysqld stop

Ensuite, démarrez le service avec --skip-grant-tables :

------------- SystemD ------------- 
# systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"
# systemctl start mariadb
# systemctl status mariadb

------------- SysVinit -------------
# mysqld_safe --skip-grant-tables &

Cela vous permettra de vous connecter au serveur de base de données en tant que root sans mot de passe (vous devrez peut-être changer de terminal pour le faire) :

# mysql -u root

À partir de là, suivez les étapes décrites ci-dessous.

MariaDB [(none)]> USE mysql;
MariaDB [(none)]> UPDATE user SET password=PASSWORD('YourNewPasswordHere') WHERE User='root' AND Host = 'localhost';
MariaDB [(none)]> FLUSH PRIVILEGES;

Enfin, arrêtez le service, annulez la variable d'environnement et redémarrez le service :

------------- SystemD ------------- 
# systemctl stop mariadb
# systemctl unset-environment MYSQLD_OPTS
# systemctl start mariadb

------------- SysVinit -------------
# /etc/init.d/mysql stop
# /etc/init.d/mysql start

Cela entraînera l'application des modifications précédentes, vous permettant de vous connecter au serveur de base de données à l'aide du nouveau mot de passe.

Résumé

Dans cet article, nous avons expliqué comment réinitialiser le mot de passe root MariaDB / MySQL. Comme toujours, n'hésitez pas à utiliser le formulaire de commentaire ci-dessous pour nous envoyer une note si vous avez des questions ou des commentaires. Nous sommes impatients de vous entendre !