エラー: MySQL クライアント認証プロトコルの非互換性
JDBC を使用して MySQL データベースに接続すると、「クライアントはサポートしていません」というエラーが発生する場合があります。サーバーによって要求された認証プロトコルです。」この問題は、MySQL サーバーが、MySQL クライアントでサポートされているものよりも新しい認証プロトコル、特に MySQL Connector/J を使用していることが原因で発生します。
解決策
この問題を解決するにはを使用するには、MySQL Connector/J を、MySQL 8 で導入された新しい caching_sha2_password 認証メカニズムをサポートするバージョンにアップグレードする必要があります。ドライバーの最新バージョン執筆時点のバージョンは 8.0.15 で、この認証方法のサポートが含まれています。
MySQL Connector/J の更新
使用するMaven:
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.15</version> </dependency>
Gradle の使用:
dependencies { compile group: 'mysql', name: 'mysql-connector-java', version: '8.0.15' }
注: のバージョンにアップグレードすることが重要です。認証の問題の発生を回避するために、MySQL サーバーのバージョンと互換性のある MySQL Connector/J。
以上が「クライアントはサーバーによって要求された認証プロトコルをサポートしていません」MySQL JDBC エラーを修正する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。