主页 > 网络知识 > 局域网内mysql数据库连接慢是什么原因

局域网内mysql数据库连接慢是什么原因

局域网内mysql数据库连接是什么原因

  局域网可以实现文件管理、应用软件共享、打印机共享、扫描仪共享、工作组内的日程安排、电子邮件和传真通信服务等功能。通过内网连另外一台机器的mysql服务, 确发现速度N慢! 等了大约几十秒才等到提示输入密码。非常急人,有没有办法可以解决局域网内mysql数据库连接慢呢?下面小编带领大家来解决此问题,感兴趣的朋友一起看看吧

 

局域网内mysql数据库连接慢是什么原因

 

  在网上搜索了下解决办法, 发现有两种:

  一. 两边机器配置的resolve.conf不一样, 把resolve.conf配置成速度比较快的DNS就OK

  二. 把mysql配置中的DNS反向解析关掉, 也OK

  我用的是第一种办法, 修改resolve.conf配置后, 速度就上来了!

  两台在同一网段的机器, 连接同一个数据库服务器, 一台的速度是另一台的100倍, 数据库主机是域名表示的. 怎么都想不明白?

  后来查看两台机器的 /etc/resolv.conf, 发现配置不一样, 改成速度快的那台机器的配置, 速度那上就上来了.

  域名解析也可以导致网络程序慢, 又一收获. 另外, mysql还有DNS反向解析的问题, 也可能导致速度慢, 可以在mysql的配置文件中, 把DNS反向解析关掉.

  当远程访问mysql时,mysql会解析域名,会导致访问速度很慢,加上下面这个配置可解决此问题

  # 禁止mysql做域名解析

  [mysqld]

  skip-name-resolve

  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机器,有一台连接很快,另外一台输入密码后要等好几秒钟才能连上。

 

说点什么吧
  • 全部评论(0
    还没有评论,快来抢沙发吧!