我在这里完全感到困惑。我在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上具有相同的设置,并且一切运行正常
有什么建议吗?
非常感谢!
答案 0 :(得分:1)
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
。