Maison > base de données > tutoriel mysql > Comment puis-je corriger les erreurs d'authentification Node.js avec le caching_sha2_password de MySQL 8.0 ?

Comment puis-je corriger les erreurs d'authentification Node.js avec le caching_sha2_password de MySQL 8.0 ?

Barbara Streisand
Libérer: 2024-12-02 04:42:13
original
418 Les gens l'ont consulté

How Can I Fix Node.js Authentication Errors with MySQL 8.0's caching_sha2_password?

Problème d'authentification Node.js avec MySQL 8.0

La récente mise à niveau vers MySQL 8.0 a introduit un défi d'authentification pour les applications Node.js se connectant à Bases de données MySQL. MySQL 8.0 utilise un nouveau plugin d'authentification par défaut, caching_sha2_password, que les pilotes Node.js de la communauté actuelle pour MySQL ne disposent pas de mécanismes d'authentification côté client compatibles pour prendre en charge.

Problème :

Les applications Node.js ne parviennent pas à s'authentifier avec succès auprès des bases de données MySQL 8.0, ce qui entraîne un Erreur « ER_NOT_SUPPORTED_AUTH_MODE » lors de l'authentification en raison d'une incompatibilité dans les plugins d'authentification.

Solution de contournement :

Pour contourner ce problème, vous avez deux options :

  1. Modifier l'authentification du compte utilisateur Plugin :

    Modifiez le compte utilisateur « root » existant ou créez un nouveau compte utilisateur pour utiliser le plugin d'authentification précédent, mysql_native_password. Ceci peut être réalisé via les commandes SQL suivantes :

    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'MyNewPass';
    
    CREATE USER 'foo'@'localhost' IDENTIFIED WITH mysql_native_password BY 'bar';
    Copier après la connexion
  2. Utilisez le connecteur MySQL Node.js officiel :

    Utilisez le MySQL officiel Connecteur Node.js, basé sur le protocole X et supportant nativement le nouveau mode d'authentification utilisé par MySQL 8.0.

Résolution future :

Une pull request est actuellement en développement pour résoudre ce problème dans la communauté des pilotes Node.js pour MySQL. Une fois fusionnée et publiée, cette mise à jour fournira une prise en charge appropriée du nouveau mode d'authentification dans MySQL 8.0.

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!

source:php.cn
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