Maison > base de données > tutoriel mysql > 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
Libérer: 2024-11-19 03:18:02
original
765 Les gens l'ont consulté

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"
Copier après la connexion

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;
Copier après la connexion

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
    Copier après la connexion
  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;
    Copier après la connexion
  3. Commandes Bash (suite) :

    sudo /etc/init.d/mysql stop
    sudo /etc/init.d/mysql start
    mysql -u root -p
    Copier après la connexion

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 de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal