ホームページ >バックエンド開発 >PHPチュートリアル >mysqli_connect が「認証方法が不明 (caching_sha2_password)」で失敗するのはなぜですか?
mysqli_connect エラー: 認証方法が不明です (caching_sha2_password)
mysqli_connect を使用して MySQL で認証しようとすると、次のエラーが発生する場合があります:
mysqli_connect(): The server requested authentication method unknown to the client [caching_sha2_password]
このエラーが発生しますMySQL サーバーのデフォルトの認証プラグインが caching_sha2_password に設定されている場合、これは特定のユーザー アカウント構成と互換性がありません。
トラブルシューティング:
この問題を解決するには、次の 2 つの解決策があります。利用可能:
ユーザー認証プラグインの変更:
次の SQL コマンドを実行して、影響を受けるユーザーの認証プラグインを変更します:
ALTER USER 'username'@'hostname' IDENTIFIED WITH mysql_native_password BY 'password';
ユーザー名とホスト名を適切な値に置き換えます。 user.
MySQL Server Ini ファイルの変更:
MySQL Server の ini ファイル (my.ini または my.cnf) を編集し、 default_authentication_plugin の設定をmysql_native_password:
[mysqld] default_authentication_plugin=mysql_native_password
変更を加えた後、MySQL サーバーを再起動します。
追加のヒント:
新しいユーザーを作成する場合は、次のコマンドを使用します。 mysql_native_password 認証:
CREATE USER 'username'@'hostname' IDENTIFIED WITH mysql_native_password BY 'password';
次の手順に従うことで、次のことができます。 caching_sha2_password 認証プラグインが使用されている場合でも、mysqli_connect を使用して MySQL で正常に認証されます。有効になりました。
以上がmysqli_connect が「認証方法が不明 (caching_sha2_password)」で失敗するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。