J'ai suivi ceci tutoriel pour installer MySQL, mais après avoir installé MySQL avec succès, je ne pouvais pas accéder à la base de données.
ERREUR 1698 (28000): Accès refusé pour l'utilisateur 'root' @ 'localhost'
J'ai trouvé une solution ici lien , en suivant cette solution, j'ai résolu mon problème.
Les étapes courtes sont:
Sudo mysql -u root
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'test';
Remarque: ici test
est un nouveau mot de passe pour l'utilisateur root. Pensez également à exécuter la commande Sudo service mysql restart
après avoir modifié l'utilisateur.
J'ai trouvé une autre solution beaucoup mieux car nous n'avons pas besoin de donner de mot de passe pour le système local.
C'est comme suit.
Terminal ouvert et type
Sudo mysql -u root -p
Il vous invitera dans mysql, ici vous pouvez lancer toutes les commandes mysql.
Utilisez la table mysql pour le type de table de changement, afin que nous puissions utiliser un mot de passe vide. Ci-dessous est la commande pour cela
USE mysql;
Maintenant, nous changeons le type de table en suivant la commande
UPDATE user SET plugin='mysql_native_password' WHERE User='root';
nous devons maintenant vider les privilèges, car nous avons utilisé UPDATE. Si vous utilisez INSERT, UPDATE ou DELETE sur tables de droits directement, vous devez utiliser FLUSH PRIVILEGES afin de recharger les tables de droits.
FLUSH PRIVILEGES;
quitte maintenant mysql en suivant la commande
exit;
maintenant redémarrez le serveur mysql en suivant la commande
service mysql restart
J'espère que cela peut aider
Je vous remercie.