6

我有这个错误:

Warning: mysql_connect(): [2002] Connection refused (trying to connect via tcp://127.0.0.1:3306)

我看到了一个类似的问题,我通过更改localhost为尝试了解决方案127.0.0.1,但它仍然无法正常工作。我正在使用 Mac OS X Lion。请任何帮助将不胜感激

这是我用来连接的 PHP 代码:

<?php
    require("constants.php");
    // open database
    $connect = mysql_connect(DB_SERVER,DB_USER,DB_PASS) or die('error connecting: ' . mysql_error());
    // select database
    mysql_select_db(DB_NAME) or die('error selecting db: ' . mysql_error());
?>
4

2 回答 2

0

如果对端口 3306 上的连接开放,请尝试确保您的防火墙。

该命令应该是ipfw set enable 3306,但如果您愿意,您可以阅读更多关于实际设置防火墙权限的信息。

另一件事可能是确保 MySQL 正在侦听端口 3306,编辑my.ini文件并设置

[client]
port=3306

然后重启 MySQL。

于 2012-06-24T11:31:35.103 回答
0

我以前也遇到过这个问题。您可以通过在配置中注释掉“skip-networking”来修复它。(my.ini 或 my.cnf,Linux 上是 /etc/mysql/my.cnf,Mac 不确定)

-- 编辑
另外,您可以尝试在终端中输入“netstat”,以确保 mysql 已在此处列出(应该类似于 127.0.0.1:mysql 或 127.0.0.1:3306)。如果未列出,则 MySQL 要么尚未启动,要么无法绑定。

于 2012-06-24T11:35:16.737 回答