web-dev-qa-db-fra.com

# 1698 - Accès refusé pour l'utilisateur 'root' @ 'localhost' mysql -5.7 et ubuntu-16.04

Je reçois une erreur ci-dessous lorsque je suis connecté au phpmyadmin.

ce n'est pas une nouvelle installation.

J'ai aussi essayé de me connecter via la ligne de commande.

1.

mysql -u root -p

 **error :** ERROR 1698 (28000): Access denied for user 'root'@'localhost'

2.

Sudo mysql -u root -p

Je suis connecté avec succès à mysql en utilisant la commande ci-dessus.

mais pas avec le cas 1.

Mysql details:
username : root 
password : 
5
prashanth padala

J'ai résolu le problème ci-dessus avec la définition de la valeur du plugin dans les tables utilisateur

mysql> USE mysql;
mysql> UPDATE user SET plugin='mysql_native_password' WHERE User='root';
mysql> FLUSH PRIVILEGES;
mysql> exit;

$ service mysql restart
2
prashanth padala

En effet, MySQL utilise par défaut un compte système local pour se connecter en tant qu'utilisateur root. Ceci est fait avec le plugin “unix_socket” ou il est possible que le mot de passe ait été changé.

Pour permettre à l'utilisateur root de MySQL de se connecter à PhpMyAdmin, exécutez les commandes suivantes dans la commande MySQL

use mysql;
UPDATE user SET plugin='mysql_native_password' WHERE User='root';
FLUSH PRIVILEGES;
exit;

voir PhpMyAdmin

4
SagarVirpara

étape 1. Sudo mysql -u root -p

étape 2. USE mysql;

étape 3. ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'admin';

Ici 'admin' est votre nouveau mot de passe, vous pouvez le changer.

étape 4. exit Merci. Vous avez terminé.

3
Y. Joy