以下的文章主要介绍的是远程连接MySQL数据库在实际应用中速度慢的实际解决方案,即,skip-name-resolve 取消DNS的反向的详细解析,以下就是具体内容的描述,IT技术网itjs.cn整理分享给学习MySQL的朋友,希望大家喜欢这样的Mysql文章或资料。
PHP远程连接MySQL速度慢,有时远程连接到MySQL用时4-20秒不等,本地连接MySQL正常,出现这种问题的主要原因是,默认安装的MySQL开启了DNS的反向解析,在MY.INI(WINDOWS系统下)或MY.CNF(UNIX或LINUX系统下)文件的[MySQLd]下加入skip-name-resolve这一句。
但是,这样会引起一个问题:连接MySQL时,不能使用 localhost连接了,而是要使用IP地址的;如果是按localhost对用户赋权限的话,用户登录权限也要修改一下的。
连接MySQL速度慢的解决方法.
2台服务器,一台跑iis+php,一台跑MySQL,和以往一样配置好环境,测试页面一切OK
跑应用的时候发现php访问MySQL速度很慢,这种情况在以前从未发现过,虽然2台服务器并非在同一网段中,但是ping数值基本上都在1,2ms之间,tcp连接应该不是问题关健,google以后找到答案,在my.ini文件的[MySQLd]部分加入:skip-name-resolve,保存文件,重启MySQL,一切OK啦,速度象飞一样了
新版本的MySQL配置起来不象以前的那个傻瓜化了,这个问题折腾了我一上午的时间,晚上回来总算是解决了,嘿嘿,又学到一些东西。
Windows 2003下的MySQL 5服务器,本机连接到MySQL服务非常快,局域网内有两台Linux机器,有一台连接很快,另外一台输入密码后要等好几秒钟才能连上。
解决办法:
在MySQL服务器的配置中增加一个如下配置后速度飞快。
[MySQLd]
在局域网内连接其他机器的MySQL,发现速度慢的很,不知道什么原因,总有几秒的延迟.
后来在网上发现解决方法,my.ini里面添加
[MySQLd] skip-name-resolve skip-grant-tables
这样速度就快了!
skip-name-resolve
选项就能禁用DNS解析,连接速度会快很多。不过,这样的话就不能在MySQL的授权表中使用主机名了而只能用ip格式。
若使用–skip-grant-tables系统将对任何用户的访问不做任何访问控制,但可以用 MySQLadmin flush-privileges或MySQLadmin reload来开启访问控制;默认情况是show databases语句对所有用户开放,
如果MySQL服务器没有开远程帐户,就在my.ini里面加上skip-grant-tables