218 votes

MySQL : Comment réinitialiser ou modifier le mot de passe racine de MySQL ?

Comment changer le mot de passe et le nom d'utilisateur de la racine de MySQL dans un serveur ubuntu ? Dois-je arrêter le service mysql avant de procéder à des modifications ?

J'ai aussi une installation de phpmyadmin, est-ce que phpmyadmin sera mis à jour automatiquement ?

13voto

user2206324 Points 311

Si vous souhaitez changer le mot de passe de la racine de MySQL, dans un terminal, entrez :

sudo dpkg-reconfigure mysql-server-5.5

Le démon MySQL sera arrêté, et vous serez invité à saisir un nouveau mot de passe.

13voto

lizard Points 141

Cela fonctionne comme un charme, je l'ai fait pour Ubuntu 16.04. Le crédit complet au lien ci-dessous car je l'ai obtenu à partir de là. [ [https://coderwall.com/p/j9btlg/reset-the-mysql-5-7-Root-password-in-ubuntu-16-04-lts] [1]](https://coderwall.com/p/j9btlg/reset-the-mysql-5-7-root-password-in-ubuntu-16-04-lts][1])

Arrêter MySQL

sudo service mysql stop

Créez le répertoire du service MySQL. sudo mkdir /var/run/mysqld

Donnez à l'utilisateur de MySQL la permission d'écrire dans le répertoire de service.

sudo chown mysql: /var/run/mysqld

Démarrez MySQL manuellement, sans vérification des autorisations ni mise en réseau.

sudo mysqld_safe --skip-grant-tables --skip-networking &

Se connecter sans mot de passe.

mysql -uroot mysql

Mettre à jour le mot de passe de l'utilisateur Root. Assurez-vous qu'au moins le compte Root soit mis à jour par la requête ci-dessous. Faites une sélection et vérifiez les valeurs existantes si vous le souhaitez.

UPDATE mysql.user SET 
authentication_string=PASSWORD('YOURNEWPASSWORD'), 
plugin='mysql_native_password' WHERE User='root';
EXIT;

Désactiver MySQL.

sudo mysqladmin -S /var/run/mysqld/mysqld.sock shutdown

Démarrez le service MySQL normalement.

sudo service mysql start

12voto

Huseyin Points 404

Cette solution appartient à la version précédente de MySQL. Vous pouvez le faire en vous connectant à MySQL à l'aide de l'authentification par socket.

sudo mysql -u root

Ensuite, la commande suivante peut être exécutée.

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

Les détails sont disponibles aquí .

10voto

juanitourquiza Points 425

C'est la solution pour moi. Je travaille sous Ubuntu 18.04 : https://stackoverflow.com/a/46076838/2400373

Mais il est important que ce changement se fasse lors de la dernière étape :

UPDATE mysql.user SET authentication_string=PASSWORD('YOURNEWPASSWORD'), plugin='mysql_native_password' WHERE User='root' AND Host='localhost';

8voto

Masum Billah Points 555

Pour Ubuntu 18.04 et mysql version 14.14 Distrib 5.7.22 suivez l'étape ci-dessous pour réinitialiser le mot de passe mysql.

Étape 1

sudo systemctl stop mysql

Étape 2

sudo systemctl edit mysql

Cette commande ouvrira un nouveau fichier dans l'éditeur nano, que vous utiliserez pour modifier les surcharges de service de MySQL. Ceux-ci modifient les paramètres de service par défaut de MySQL. Ce fichier sera vide, alors ajoutez le contenu suivant :

[Service]
ExecStart=
ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/mysqld.pid --skip-grant-tables --skip-networking

Étape 3

sudo systemctl daemon-reload
sudo systemctl start mysql

Étape 4

sudo mysql -u root

Étape 5

FLUSH PRIVILEGES;

Étape 6

UPDATE mysql.user SET authentication_string = PASSWORD('new_password') WHEREuser = 'root';

Étape 7

UPDATE mysql.user SET plugin ='mysql_native_password' WHERE user = 'root';

Étape 8

sudo systemctl revert mysql

et enfin

sudo systemctl restart mysql

Profitez maintenant

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X