phpMyAdmin でホストされている MySQL データベースへの PHP 接続を確立しようとすると、 「接続に失敗しました: SQLSTATE[HY000] [2002] 接続が拒否されました。」というエラーが発生する場合があります。この問題は、接続構成が正しくないために発生する可能性があります。
提供されたコード内:
$servername = "127.0.0.1"; $username = "root"; $password = "root";
ポート構成:
最初は、エラー$servername として「localhost」を使用すると、「そのようなファイルまたはディレクトリはありません」が発生しました。 IP アドレス「127.0.0.1」に変更すると、この問題は解決されました。しかし、接続は依然として拒否されました。
原因はポート設定が間違っていたことです。 MAMP は通常、ポート 8889 で MySQL を実行します。接続文字列を次のように変更すると、「接続が拒否されました」エラーが解決されました:
$conn = new PDO("mysql:host=$servername;port=8889;dbname=AppDatabase", $username, $password);
この修正にもかかわらず、$servername に「localhost」を使用すると、依然として同じエラーが発生します。これは、MAMP セットアップ内に追加の構成の問題または制限がある可能性があることを示しています。
追加のヒント:
以上がPHP MySQL 接続が接続を拒否するのはなぜですか? (SQLSTATE[HY000] [2002])の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。