PHP 连接问题:“连接失败:SQLSTATE[HY000] [2002] 连接被拒绝”
问题:
当尝试建立与 phpMyAdmin 上托管的 MySQL 数据库的 PHP 连接时,用户可能会收到错误消息“连接失败:SQLSTATE[HY000] [2002] 连接被拒绝。”
分析:
最初,连接尝试使用“localhost”作为连接“servername”,但这导致错误“连接失败:SQLSTATE[HY000] [2002]没有这样的文件或目录。”将“servername”更改为数据库主机的IP地址消除了文件或目录错误,但触发了“连接被拒绝”错误。
解决方案:
进一步调查显示,连接尝试连接到端口 8888,而 MAMP 托管数据库的正确端口是 8889。修改连接字符串以包含正确的端口解决了该问题问题:
$conn = new PDO("mysql:host=$servername;port=8889;dbname=AppDatabase", $username, $password);
附加说明:
虽然将“servername”更改为“localhost”继续导致“没有这样的文件或目录”错误,但与“服务器名称”的数据库 IP 地址仍然成功。
以上是为什么我的 PHP 连接到 MySQL 失败并显示'连接被拒绝”以及如何修复它?的详细内容。更多信息请关注PHP中文网其他相关文章!