Récemment, j'ai eu besoin d'utiliser une base de données pour apprendre Django, j'ai donc téléchargé navicat pour l'utiliser avec MySQL, mais les problèmes suivants sont survenus lors de la connexion :
Après une recherche en ligne, j'ai découvert que la raison de cette erreur est que la règle de cryptage dans les versions antérieures à mysql8 est mysql_native_password, tandis que la règle de cryptage après mysql8 est caching_sha2_password.
Recommandations associées : "Tutoriel graphique Navicat pour MySQL"
Il existe deux façons de résoudre ce problème. La première consiste à mettre à jour le pilote Navicat pour résoudre ce problème. La première consiste à modifier la règle de cryptage pour la connexion de l'utilisateur MySQL en mysql_native_password.
La deuxième méthode a été adoptée sur la base de la plupart des suggestions sur Internet :
1. Ouvrez cmd avec les droits d'administrateur, entrez mysql -u root -p pour saisir le mot de passe et entrez dans la base de données mysql ;
mysql -u root -p #进入数据库
2. Modifiez les règles de cryptage et le mot de passe et actualisez
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的mysql密码' PASSWORD EXPIRE NEVER; #修改加密规则 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的mysql密码'; #修改密码 FLUSH PRIVILEGES; #刷新数据
Dans des circonstances normales, vous pouvez continuer à utiliser navicat pour vous connecter à MySQL avec succès. n'a pas pu entrer dans la base de données ;
Je ne sais pas si des amis comme moi ont rencontré cette situation, mais pas de panique, cmd n'est pas autorisé à entrer, nous pouvons nous connecter directement avec le client mysql ;
Entrez le mot de passe, entrez mysql et entrez la commande dans le deuxième point pour résoudre le problème.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!