「認証プラグイン 'caching_sha2_password' を読み込めません」エラーの修正
概要
MySQL 8 をインストールしましたが、MySQL クライアント (Sequel Pro、HeidiSQL など) を使用してデータベースに接続できません. MySQL クライアントを使用して接続を試みるたびに、次のエラーが発生します
Authentication plugin 'caching_sha2_password' cannot be loaded: dlopen(/usr/local/mysql/lib/plugin/caching_sha2_password.so, 2): image not found
また
Authentication plugin 'caching_sha2_password' cannot be loaded. The specific module can not be found
理由
MySQL 8.0 の時点で、以前のバージョンのデフォルトであった
caching_sha2_password
ではなく、mysql_native_password
がデフォルトの認証プラグインになりました.これは、この変更により、mysql_native_password
に依存するクライアント (Sequel Pro、HeidiSQL など) が接続できなくなることを意味します.解像度
1) MySQL 構成ファイルに以下を追加することにより、サーバー レベルで
mysql_native_password
メカニズムに戻すことができます.[mysqld]
default_authentication_plugin=mysql_native_password
2) ユーザー レベルで、次のプロセスを介して
mysql_native_password
メカニズムに戻すことができます.ターミナル ウィンドウを開き、コマンド ライン経由で MySQL インスタンスに接続します.
mysql -u [USERNAME] -p
MySQL パスワードを入力して Enter キーを押すと、MySQL インスタンスにログインする必要があります.
[USERNAME]
、 [PASSWORD]
、および [HOST]
を適宜置き換えて、次の SQL コマンドを実行します.注:
[HOST]
は、自分のコンピューターからのアクセスのみを許可するコンピューターの IP アドレスにすることができます.ローカル開発環境の場合は、%
を使用して任意のホストからのアクセスを許可することができます.ALTER USER '[USERNAME]'@'[HOST]' \
IDENTIFIED WITH mysql_native_password \
BY '[PASSWORD]';
また
ALTER USER '[USERNAME]'@'%' \
IDENTIFIED WITH mysql_native_password \
BY '[PASSWORD]';
これで、MySQL クライアントに戻り、通常どおり接続できるようになります.
参考文献
Reference
この問題について(「認証プラグイン 'caching_sha2_password' を読み込めません」エラーの修正), 我々は、より多くの情報をここで見つけました https://dev.to/chrisshennan/fixing-authentication-plugin-cachingsha2password-cannot-be-loaded-errors-4g0cテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol