Windows 7/8下连接本地MySQL慢的问题解析
发布:smiling 来源: PHP粉丝网 添加日期:2014-10-04 11:17:08 浏览: 评论:0
问题分析:考虑到可能是程序性能问题后,我使用了xdebug的性能日志功能输出程序运行日志后发现连接mysql的函数时间居然用掉了接近95%的执行时间.
确认是mysql性能问题后,考虑是mysql的域名反查功能影响了速度,令我失望的是,在my.ini里面关闭域名反查后问题依旧存在.
百思不得其解时我突发奇想将代码中的服务器的地址从localhost修改为了127.0.0.1,那个神奇的1秒钟延迟居然消失了.
换成ip后居然就好了,难道是localhost存在啥蹊跷?打开cmd,输入ping localhost,ping输出的结果让我十分惊讶.
没错,localhost 出来的是 ipv6 地址 ::1,那么这一秒延迟的原因也很容易理解了,使用localhost连接,程序解析出来的地址是ipv6地址::1,然后去尝试连接监听这个地址的mysql,而显然的是mysql监听的是ipv4地址127.0.0.1, ipv6连不上超时后会再去连接ipv4地址127.0.0.1,这就是这个1秒钟延迟出现的原因.
打开windows的hosts文件,你会看到下面的注释:
- # localhost name resolution is handled within DNS itself.
- # 127.0.0.1 localhost --phpfensi.com
- # ::1 localhost
解决方法:
方案1,使用127.0.0.1而不是localhost去连接mysql.
方案2,编辑hosts文件强制将127.0.0.1绑定在localhost.
Tags: MySQL慢 本地MySQL
相关文章
- ·MySQL 5.5开启慢查询日志方法(2014-09-23)
- ·Mysql慢查询和慢查询日志分析利器mysqlsla安装使用(2014-09-24)
- ·如何开启Mysql的慢查询(2014-09-28)
- ·mysql 慢查询日志开启与使用详解(2014-10-02)
- ·mysql慢查询配置方法详解(2014-10-04)
- ·mysql慢查询日志分析(2014-10-10)
- ·mysql服务器查询慢原因分析与解决方法(2014-10-13)
- ·Mysql慢查询使用与参数详解(2015-04-17)
- ·MySQL慢查询日志开启分析详解介绍(2015-04-18)
- ·mysql慢查询记录和mysqlbinlog配置教程(2015-04-20)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)