ホームページ >データベース >mysql チュートリアル >PHP 7.0 アプリケーションで「MySQL 接続エラー: 不明な認証方法」が発生するのはなぜですか?

PHP 7.0 アプリケーションで「MySQL 接続エラー: 不明な認証方法」が発生するのはなぜですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-28 12:30:45816ブラウズ

Why Does My PHP 7.0 Application Get a

MySQL 接続エラー: 不明な認証方法

PHP 7.0 から MySQL データベースへの接続を確立しようとすると、エラーが発生する場合がありますメッセージ: 「サーバーはクライアントに不明な認証方法を要求しました。」

このエラーは通常、次のような理由で発生します。 MySQL サーバー上で構成された認証プラグインと、PHP アプリケーションで予期される認証方法との間の不一致。デフォルトでは、MySQL 8 は認証に安全なソケット接続に依存する「auth_socket」プラグインを使用します。ただし、多くの PHP アプリケーションは従来のパスワードベースの認証メカニズムを想定しています。

解決策:

この問題を解決するには、MySQL サーバーの認証プラグインを互換性のあるものに変更します。アプリケーションの認証方法を使用します。認証プラグインを変更する手順は次のとおりです。

  1. MySQL に root としてログインします。 「mysql」コマンドを使用して、root ユーザー接続を開始します。
  2. 次の SQL コマンドを実行します: このコマンドは、root ユーザーの認証プラグインを変更します。 「mysql_native_password」。パスワードベースの認証をサポートします。
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password
BY 'password';
  1. 「password」を root パスワードに置き換えます。 アプリケーションが別のユーザーを使用する場合は、次のように置き換えます。上記のコマンドで「root」を適切なユーザーに置き換えます。
  2. MySQL を再起動します。 service: 変更を確実に有効にするには、MySQL サービスを再起動します。

これらの手順が完了すると、PHP アプリケーションは「認証メソッド」に遭遇することなく MySQL データベースに接続できるようになります。クライアントには不明です」エラー。

以上がPHP 7.0 アプリケーションで「MySQL 接続エラー: 不明な認証方法」が発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。