2012-03-06 65 views
3

我有一个开发环境,可以远程访问共享的开发数据库。即使启用skip-name-resolve后,MySQL远程连接速度仍然很慢

我从远程MySQL服务器遇到非常慢的响应时间。我已经将skip-name-resolve添加到my.cnf文件中,重新启动了mysqld,并且还验证了它确实是通过mysql命令行中的'show variables'打开的。

有趣的是,如果我经由

mysql -h IPADDRESS -u USERNAME -p 

连接到命令行接口远程所有命令执行快闪电。

选择*在一张大桌子上瞬间下来。

我想知道为什么CLI会允许立即响应,但我的应用程序中的PHP连接等待8-10秒钟,然后从远程MySQL服务器返回任何数据。它是Amazon EC2实例,它是亚马逊Linux ami,似乎与CentOS类似。有任何想法吗?

谢谢!

+0

同样的问题在这里 – james 2012-08-07 20:07:20

回答

1

我会从确定慢度来自哪里开始。当你打开数据库时,它是在建立连接,还是从select中返回结果?你不会说你正在使用什么版本的PHP,或者在服务器上运行MySQL的版本。我的钱会在那个特定的组合上出现问题。确保你正在AMI上运行最新的更新。

2

我刚刚解决了我遇到的同样的问题,带了我4天。 Apache没问题 MySQL也没问题 问题出在我的脚本 - gethostbyaddr();当访问本地主机上的Web服务器时,可以使用 。 但是,当从另一台计算机访问服务器需要很长时间,所以现在我已经注释掉了gethostbyaddr(),并且它就像从本地主机运行一样快。 我猜gethostbyaddr()是某种Windows DNS问题,我会稍后看看