连接到本地MySQL服务器时出现“连接被拒绝”错误


“Connection refused” error when connecting to local MySQL server?

我遇到了这个错误:

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());
?>

尝试确保防火墙是否对端口 3306 上的连接打开。

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

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

[client]
port=3306

然后重新启动MySQL。

我以前遇到过这个问题。您可以通过注释掉配置中的"跳过网络"来修复它。(my.ini 或 my.cnf,它是 Linux 上的/etc/mysql/my.cnf,不确定 Mac )

--编辑
此外,您可以尝试在终端中键入"netstat",以确保 mysql 列在那里(应该是 127.0.0.1:mysql 或 127.0.0.1:3306)。如果未列出,则MySQL尚未启动或无法绑定。