Comme le titre, enregistrez les étapes pour résoudre un échec : L'idée n'a pas réussi à faire fonctionner la base de données sous Linux (ubuntu 18.04), et le message d'erreur a été signalé : Le client ne prend pas en charge le protocole d'authentification demandé par le serveur ; envisagez de mettre à niveau le client MySQL ; Je suis également novice, certains concepts sont basés sur S'il y a des erreurs dans ma compréhension, veuillez me corriger !!!
Raisons possibles : autorisations insuffisantes
J'ai constaté que lorsque j'entre mysql dans le terminal, j'ai besoin de l'autorisation root à chaque fois. Sinon, "Accès refusé pour l'utilisateur 'root'@'localhost'" est le même, même dans Navicat. signale une erreur 2002. Mais si je suis l'utilisateur root, il n'y aura aucun problème de connexion. C'est très déroutant !
Je suppose donc que c'est parce que mon idée ne dispose pas des autorisations root. Après tout, j'ai ouvert l'idée avec les autorisations utilisateur normales.
Ci-joint la méthode mysql de connexion au terminal (root peut être remplacé par d'autres noms d'utilisateur)
via :~$ mysql -u root -p
Solution approximative : créez un nouvel utilisateur ordinaire. Cet utilisateur a toutes les autorisations pour ajouter, supprimer, modifier et vérifier. Utilisez ce nom d'utilisateur et ce mot de passe pour vous connecter. Fonctionnement détaillé : utilisez les autorisations root pour accéder à mysql
.via :~$ sudo su via :~$ mysql -u root -p
Ajouter des utilisateurs
CREATE USER '用户名'@'host' IDENTIFIED BY '密码';
Autorisation (J'accorde toutes les autorisations, donc c'est TOUT. Modifier selon la situation)
GRANT ALL ON *.* TO '用户名'@'localhost';
Rafraîchir
flush privileges;
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!