解决win7本地php链接mysql延迟缓慢问题

最近在新机器上面,要配置一个WAMP环境,因为个人比较喜欢都是自己搭建环境。

在配置完成后,打开一个项目页面,明显的感觉到延迟和顿感。但是不是很明白哪里有问题,也继续就这样用着。

某天,项目数据库需要连接到同事的机器上面去访问,配置后,发现访问飞速,代码还是那些代码。就因为数据库换了,所以变得很快。

所以我确信是PHP连接mysql数据库的问题了,没有瞎猜和细想。直接google了,就看到这样一篇文章

问题就是:由于localhost 没有指定 127.0.0.1 ip地址,请求localhost时直接返回的 ipv6格式地址 ::1 。然后去尝试监听 ::1 上面的mysql 3306端口,但是mysql 的监听端口是在ipv4 127.0.0.1 上。

在地址 ::1 找寻 3306 端口没有找到,才会在 ipv4 的地址上面去寻找。所有就有了这样的一个延迟。

按上面文章的说法,一看hosts文件果然如此。

localhost 确实被注释着,也没有 localhost 的地址指向。


# 127.0.0.1 localhost
# ::1 localhost

本地ping测试
[修改之前]
得到ipv6 ::1 地址


[修改之后]
得到ipv4 127.0.0.1 地址

再次切换到本地数据库,重新请求瞬间秒开页面了。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*