Php MAMP-SQLSTATE[HY000][2002]连接被拒绝
我完全搞糊涂了。我有iMac上的MAMP,它说MySQL正在运行。 当我尝试通过Sequel Pro访问它时,我可以使用套接字选项进行连接 但是,如果我尝试使用标准方法连接,我会得到“连接被拒绝” 当我尝试使用PHP连接时,会收到连接被拒绝的消息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 =>
$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-非常感谢