Maison >base de données >tutoriel mysql >Comment corriger l'erreur MySQL JDBC « Le client ne prend pas en charge le protocole d'authentification demandé par le serveur » ?

Comment corriger l'erreur MySQL JDBC « Le client ne prend pas en charge le protocole d'authentification demandé par le serveur » ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-30 18:57:10683parcourir

How to Fix

Erreur : incompatibilité du protocole d'authentification du client MySQL

Lors de la connexion à une base de données MySQL à l'aide de JDBC, vous pouvez rencontrer l'erreur « Le client ne prend pas en charge protocole d'authentification demandé par le serveur." Ce problème provient du fait que le serveur MySQL utilise un protocole d'authentification plus récent que celui pris en charge par votre client MySQL, en particulier MySQL Connector/J.

Solution

Pour résoudre ce problème , vous devez mettre à niveau votre MySQL Connector/J vers une version prenant en charge le nouveau mécanisme d'authentification caching_sha2_password introduit dans MySQL 8. La dernière version du pilote au moment de la rédaction est 8.0.15, qui inclut la prise en charge de cette méthode d'authentification.

Mise à jour de MySQL Connector/J

  • Utilisation de Maven :

    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>8.0.15</version>
    </dependency>
  • Utilisation Gradle :

    dependencies {
      compile group: 'mysql', name: 'mysql-connector-java', version: '8.0.15'
    }
  • Téléchargement direct :
    Téléchargez la dernière version de MySQL Connector/J depuis https://dev.mysql.com/downloads /connector/j/ et ajoutez-le au fichier de votre projet chemin de classe.

Remarque : Il est important de mettre à niveau vers une version de MySQL Connector/J compatible avec la version de votre serveur MySQL pour éviter de rencontrer des problèmes d'authentification.

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