MySQL 8.0 エラー: PHP アプリケーションとの認証の不一致を解決する
MySQL 8.0 データベースに接続している PHP 開発者は、「サーバーが認証を要求しました」というエラーが発生する場合があります。クライアントには未知の方法です。」このエラーは通常、MySQL データベースと PHP アプリケーションで使用される認証方法の不一致によって発生します。
認証方法の競合:
MySQL 8.0 は caching_sha2_password をそのパスワードとして使用します。デフォルトの認証方法ですが、多くの PHP アプリケーションは従来のパスワードベースの認証を使用することを想定しています。アプリケーションが間違った認証方法でデータベースに接続しようとすると、サーバーは上記のエラーを返します。
解決策:
この問題を解決するには、 MySQL データベースで使用される認証方法を、PHP アプリケーションで期待される認証方法と一致するように変更する必要があります。これは、MySQL データベースの認証プラグインを、パスワードベースの認証をサポートする mysql_native_password に切り替えることで実現できます。
認証プラグインを変更する手順:
mysql -u root -p
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'new_password';
「new_password」を次の文字列に置き換えます。選択した安全なパスワード。
追加リソース:
このトピックの詳細については、以下を参照してください。リソース:
以上がPHP を使用した MySQL 8.0 で「サーバーはクライアントに不明な認証方法を要求しました」エラーを修正する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。