Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php MAMP-SQLSTATE[HY000][2002]连接被拒绝_Php_Mysql_Mamp - Fatal编程技术网

Php MAMP-SQLSTATE[HY000][2002]连接被拒绝

Php MAMP-SQLSTATE[HY000][2002]连接被拒绝,php,mysql,mamp,Php,Mysql,Mamp,我完全搞糊涂了。我有iMac上的MAMP,它说MySQL正在运行。 当我尝试通过Sequel Pro访问它时,我可以使用套接字选项进行连接 但是,如果我尝试使用标准方法连接,我会得到“连接被拒绝” 当我尝试使用PHP连接时,会收到连接被拒绝的消息 $db = new PDO("mysql:host=127.0.0.1:8889;dbname=wabie_centraldb", "root", "root", array(PDO::MYSQL_ATTR_INIT_COMMAND =>

我完全搞糊涂了。我有iMac上的MAMP,它说MySQL正在运行。 当我尝试通过Sequel Pro访问它时,我可以使用套接字选项进行连接

但是,如果我尝试使用标准方法连接,我会得到“连接被拒绝”

当我尝试使用PHP连接时,会收到连接被拒绝的消息

$db = new PDO("mysql:host=127.0.0.1:8889;dbname=wabie_centraldb", "root", "root", array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET sql_mode=""') );
我很困惑,因为显然mysql正在运行(因为我可以单向连接)

我在我的MacBook上有相同的设置,而且一切都很完美

有什么建议吗


非常感谢

MySQL的标准端口是3306,不需要在连接中指定:

$db = new PDO("mysql:host=127.0.0.1;dbname=wabie_centraldb", "root", "root", array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET sql_mode=""') );
要指定数据库连接端口,请使用以下DSN字符串:

$db = new PDO("mysql:host=127.0.0.1;port=3306;dbname=wabie_centraldb", "root", "root", array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET sql_mode=""') );

您可以在标准连接中的Sequel Pro中测试3306。此外,您可能必须将主机从
127.0.0.1
更改为
localhost
,具体取决于您的设置方式。

不幸的是,这不起作用。我仍然收到相同的错误(PDO和Sequel Pro)您的MySQL服务器运行在哪个端口?您可能必须将127.0.0.1更改为LocalHost才可以执行此操作!Sequel Pro不喜欢它,但php确实感谢Jay-非常感谢