Zend App 的 MySQL 连接问题

Zend App 的 MySQL 连接问题

VirtualHost我已经在本地机器(安装了 XAMP 的 Windows XP)上设置了一个,并且Zend也在那里安装了,现在我尝试连接到数据库MySQL,但收到以下错误消息:

Message: SQLSTATE[HY000] [2003] Can't connect to MySQL server on ''myhost.com'' (10060)

我通过 找到的所有提示Google都没有帮助。我使用Kaspersky AntiVirus并将端口添加3306到 Apache 的允许列表中MySQL。我还 ping 了myhost.com:3306并得到了响应(IP 地址为67.63.50.51),但localhost:3306没有127.0.0.1:3306找到。我检查过,MySQL如果虚拟主机指向其他 WebApp,它们仍然可以访问,并且我的非 Zend Apps 可以正常工作。

我想我必须对端口进一步采取一些措施,或者强制应用程序使用不同的端口,但我不确定该怎么做。

任何帮助均感激不尽。

答案1

未找到 localhost:3306 和 127.0.0.1:3306

ping无法用于验证端口状态,因为它位于不同的 TCP/IP 层,并且不使用端口。尝试

telnet 本地主机 3306

如果可以连接,您应该会看到一些难以理解的字符。这是 MySQL 连接就绪字符串。

似乎其他应用程序可以访问 MySQL - 当配置 Zend 时,尝试运行xampp-portcheck.exe(在你的 xampp 根目录中),如果一切正常,则开始xampp-control.exe确保 MySQL 服务正在运行(尽管看起来很可能正在运行)。

我还 ping 了 myhost.com:3306 并得到了响应(IP 地址为 67.63.50.51),

67.63.50.51 是您的面向互联网的 IP 地址吗?如果您是为本地开发人员设置此 IP 地址,则最好在文件中配置 vhost 的主机名C:\WINDOWS\system32\drivers\etc\hosts并将其指向 127.0.0.1 - 如果 67.63.50.51 不是您的地址,则您正在测试另一台服务器(它目前重定向到荷兰托管页面)。

答案2

假设至少有一个应用程序是已经能够连接到MySQL服务器,你不需要打开更多端口Kaspetsky AntiVirus,所以如果我是你,我会看看应用程序能够hostname从那里连接并将数据库复制到您的新应用程序中。

相关内容