Maison  >  Article  >  base de données  >  Pourquoi est-ce que j'obtiens l'erreur « Le plugin 'auth_socket' n'est pas chargé » lors de la connexion à MySQL ?

Pourquoi est-ce que j'obtiens l'erreur « Le plugin 'auth_socket' n'est pas chargé » lors de la connexion à MySQL ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-19 03:18:02647parcourir

Why Am I Getting

Erreur de chargement du plug-in MySQL 'auth_socket'

Dans cette question, l'utilisateur a rencontré l'erreur suivante lors de la tentative de connexion à MySQL à l'aide de la CLI :

mysql "ERROR 1524 (HY000): Plugin 'auth_socket' is not loaded"

Cette erreur indique que le plugin MySQL responsable de l'authentification du socket n'est pas chargé. Pour résoudre ce problème, l'utilisateur doit :

Mettre à jour le plugin d'authentification :

Lors de la réinitialisation du mot de passe root (étape 2), l'utilisateur doit également modifier le plugin d'authentification à "mysql_native_password":

use mysql;
update user set authentication_string=PASSWORD("") where User='root';
update user set plugin="mysql_native_password" where User='root';  # THIS LINE
flush privileges;
quit;

Supplémentaire Considérations :

  • Utilisez 127.0.0.1 au lieu de Localhost : La connexion à MySQL via "localhost" peut entraîner des erreurs de fichier manquant ou de temps de chargement de script (SLT). Utilisez plutôt "127.0.0.1".
  • Ignorer le problème de socket : La création, la manipulation ou la liaison du fichier mysqld.sock n'était pas la cause sous-jacente de l'erreur.
  • Ignorer my.cnf : Le fichier de configuration my.cnf n'était pas non plus un facteur dans le problème.

Solution complète du code :

  1. Commandes Bash :

    sudo /etc/init.d/mysql stop
    sudo mysqld_safe --skip-grant-tables &
    mysql -uroot
  2. MySQL Commandes :

    use mysql;
    update user set authentication_string=PASSWORD("") where User='root';
    update user set plugin="mysql_native_password" where User='root';
    flush privileges;
    quit;
  3. Commandes Bash (suite) :

    sudo /etc/init.d/mysql stop
    sudo /etc/init.d/mysql start
    mysql -u root -p

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn