ホームページ >データベース >mysql チュートリアル >「mysqli_connect(): サーバーはクライアントに不明な認証方法を要求しました [caching_sha2_password]」エラーを修正する方法?
php mysqli_connect を使用して MySQL データベースへの接続を確立する場合、次のことが考えられます。 「データベースへの接続エラー」というエラーが発生し、特定のメッセージが表示される「mysqli_connect(): サーバーはクライアントに不明な認証方法を要求しました [caching_sha2_password]」。これは通常、MySQL サーバーに設定された認証方法がクライアントの期待と異なるために発生します。
この場合、PHP スクリプトは caching_sha2_password 認証方法を使用します。これには、MySQL ユーザー テーブルで定義された一致する資格情報が必要です。ただし、user1 アカウントには、caching_sha2_password に対応するパスワード ハッシュがないようです。
この問題を解決するには、いくつかのオプションがあります。
user1 の caching_sha2_password パスワード ハッシュを作成する: 次の SQL コマンドを発行して、user1 の caching_sha2_password ハッシュを作成します:
ALTER USER 'user1'@'localhost' IDENTIFIED WITH mysql_native_password BY 'new_password';
「new_password」をあなたの安全なパスワードに置き換えます。選択。これにより、user1 のパスワード ハッシュが caching_sha2_password を使用するように更新され、この方法を使用して認証できるようになります。
既存のハッシュに caching_sha2_password を強制する: 新しいパスワード ハッシュを作成できない場合アカウント制限により、既存のアカウントに対して caching_sha2_password の使用を強制できます。ハッシュ。次の SQL コマンドを発行します。
SET PASSWORD FOR 'user1'@'localhost' = PASSWORD('existing_password');
「existing_password」を user1 の現在のパスワードに置き換えます。これにより、パスワード自体を変更せずに、caching_sha2_password を使用するようにハッシュが更新されます。
これらの手順のいずれかを実行すると、caching_sha2_password 認証を使用してデータベースへの接続を正常に確立できるようになります。 。パスワード管理の詳細とオプションについては、必ず MySQL ドキュメントを参照してください。
以上が「mysqli_connect(): サーバーはクライアントに不明な認証方法を要求しました [caching_sha2_password]」エラーを修正する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。