我已经在我的 Windows XP 机器上安装了 WAMp 服务器。
当我尝试连接到 DB 时出现以下错误。
Warning: mysql_connect() [function.mysql-connect]: [2002] No connection could be made because the target machine actively (trying to connect via tcp://localhost:3306) in C:\wamp\www\demo.php on line 2
我附上了我的活动服务列表。您可以看到我在端口 80 上没有安装任何服务。
因此,当我安装 WAMP 后,我必须使用http://本地主机:81作为我的根文件夹。
我的 PHP myadmin 运行正常,但不知道如何运行。
以前有人遇到过这种问题吗?
如果您有解决方案,请告诉我。
答案1
这个问题问得很困惑。
标题表明连接到端口 3306 时出现问题(mysql 通常在此挂起)。没有活动服务列表。端口 80 上的服务与任何事情有什么关系?
我必须使用http://本地主机:81作为我的根文件夹。
为什么必须使用端口 81?你的“根文件夹”是什么意思?
我怀疑问题是 mysqld 运行正常(因为您使用 PMA 连接)但客户端对名称“localhost”具有特殊意义,并将尝试使用文件系统套接字而不是网络套接字。
在 DOS shell 中,运行“netstat -a”检查 mysqld 是否确实在监听端口 3306 - 以及监听哪些地址。尝试连接到 netstat 中列出的地址/端口(使用 127.0.0.1 而不是 localhost)
答案2
在 mysql.ini 文件中,端口定义为 3307,我将其更改为 3306,并且运行良好。
@symcbean:感谢您的时间。
答案3
我为 Norton Internet Security 程序添加了一条规则。该规则允许我的 PC(由 IP 地址指定)使用 TCP 端口 8080 和 3306 进行本地使用。今天它运行良好,解决了问题。
2011 年 10 月,当我使用 Windows 7、PHP 和 PhpED Pro 6.1 时,我遇到了连接到 PC 上的 MySQL DB 的问题。
答案4
您是否在 Windows 防火墙中打开了端口?如果防火墙中未打开 localhost:3307,即使连接回该端口也会被阻止。安装程序可能已经打开了 3306,这就是它能正常工作的原因。