web-dev-qa-db-fra.com

Méthode d'authentification MySQL 8.0 demandée inconnue du client (motdepasse_chasage_sha2)

Environnement

  • Microsoft Windows 10.0.16299.15
  • PHP 7.2.11
  • MySQL Community Server 8.0.13
  • Symfony 4

J'essaie de me connecter à la base de données MySQL. Quand je

php bin/console doctrine:database:create

, J'ai ceci:

Une exception s'est produite dans le pilote: SQLSTATE [HY000] [2054] La méthode d'authentification demandée par le serveur était inconnue du client.

PDO :: _ construct (): La méthode d'authentification demandée par le serveur est inconnue du client [motdepasse_saching_sha2]

3
Phil31971

Vous pouvez vérifier Mise à niveau vers MySQL 8.0: Considérations relatives au plug-in d'authentification par défaut pour obtenir des informations sur les remarques importantes relatives à la mise à niveau vers la version 8.0, dans lesquelles vous trouverez:

Au moment de la rédaction de cet article, les connecteurs suivants ne prennent pas en charge cachpass_sha2_password.

Si vous voulez en savoir plus, vous pouvez vérifier caching_sha2_password en tant que plug-in d'authentification préféré sur la documentation officielle de MySQL.

Donc, je pense que cela va bientôt passer à MySQL 8.0 et vous pouvez envisager de rétrograder ou d'attendre quelque temps pour que l'extension php mysql soit également mise à jour.

1
Trix

Je pense que vous utilisez MySQL 8, la méthode d’authentification par défaut a changé. Vous devrez peut-être modifier quelque chose dans la configuration de votre serveur.

Regardez ce lien: https://github.com/laradock/laradock/issues/1392#issuecomment-368308494

Une autre chose que vous pouvez faire est de déclasser votre version de MySQL.

0
Rodmar Zavala