同机房同IP段MySQL连接速度慢的原因

公司又增加一台服务器作为MySQL服务器,考虑到互访,我们放到了一个机房,又放到了一个IP段下,本地连接MYSQL正常,但是WEB服务器访问MySQL服务器明显延迟了5秒到8秒左右,而两个服务器ping值都小于1ms,理论上应该不是tcp的问题。  

在网上找了很久才发现,一个参数:skip-name-resolve,,默认安装的MYSQL开启了DNS的反向解析,在MY.INI(WINDOWS系统下)或MY.CNF(UNIX或LINUX系统下)文件的[mysqld]下加入skip-name-resolve这一句。在修改后重启MySQL,速度明显快了很多。

skip-name-resolve

选项就能禁用DNS解析,连接速度会快很多。不过,这样的话就不能在MySQL的授权表中使用主机名了而只能用ip格式。

但是,这样会引起一个问题:连接mysql时,不能使用 localhost连接了,而是要使用IP地址的;如果是按localhost对用户赋权限的话,用户登录权限也要修改一下的。

新版本的mysql配置起来不象以前的那个傻瓜化了,这个问题折腾了我一天时间,总算是解决了。