小编典典

PHP连接失败:SQLSTATE [HY000] [2002]连接被拒绝

mysql

我正在尝试使用PHP连接来连接phpmyadmin上的MySQL数据库。只是尝试查看连接是否成功,对连接没有什么幻想。我正在使用MAMP托管数据库,我尝试使用的连接是这样的:

<?php
$servername = "127.0.0.1";
$username = "root";
$password = "root";

try {
    $conn = new PDO("mysql:host=$servername;dbname=AppDatabase", $username, $password);
    // set the PDO error mode to exception
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo "Connected successfully"; 
}
catch(PDOException $e)
{
    echo "Connection failed: " . $e->getMessage();
}
?>

我一直在使用邮递员进行测试,以查看连接是否正常工作,但是我一直收到以下错误消息:

连接失败:SQLSTATE [HY000] [2002]连接被拒绝

在收到以下错误消息之前:

连接失败:SQLSTATE [HY000] [2002]没有此类文件或目录

这是因为我已将服务器名设置为localhost,通过将其更改为IP地址,它使我拒绝了连接,而且我不知道出了什么问题。

关于此的任何帮助将不胜感激。


阅读 682

收藏
2020-05-17

共1个答案

小编典典

我发现了连接不起作用的原因,这是因为连接需要连接到端口8889时试图连接到端口8888。

$conn = new PDO("mysql:host=$servername;port=8889;dbname=AppDatabase", $username, $password);

这可以解决问题,尽管将服务器名称更改为localhost仍然会给出错误。

连接失败:SQLSTATE [HY000] [2002]没有此类文件或目录

但是,当输入服务器名称的IP地址时,连接成功。

2020-05-17