`

(转载)mysql 远程连接速度慢的解决方案

 
阅读更多

       PHP远程连接MYSQL速度慢,有时远程连接到MYSQL用时4-20秒不等,本地连接MYSQL正常,出现这种问题的主要原因是,默认安装的MYSQL开启了DNS的反向解析,在MY.INI(WINDOWS系统下)或MY.CNF(UNIX或LINUX系统下)文件的[mysqld]下加入skip-name-resolve这一句。连接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]
skip-name-resolve

附录:( How MySQL uses DNS )

When a new thread connects to mysqld, mysqld will spawn a new thread to handle the request. This thread will first check if the hostname is in the hostname cache. If not the thread will call gethostbyaddr_r() and gethostbyname_r() to resolve the hostname.

If the operating system doesn't support the above thread-safe calls, the thread will lock a mutex and call gethostbyaddr() and gethostbyname() instead. Note that in this case no other thread can resolve other hostnames that is not in the hostname cache until the first thread is ready.

You can disable DNS host lookup by starting mysqld with --skip-name-resolve. In this case you can however only use IP names in the MySQL privilege tables.

If you have a very slow DNS and many hosts, you can get more performance by either disabling DNS lookop with --skip-name-resolve or by increasing the HOST_CACHE_SIZE define (default: 128) and recompile mysqld.

You can disable the hostname cache with --skip-host-cache. You can clear the hostname cache with FLUSH HOSTS or mysqladmin flush-hosts.

If you don't want to allow connections over TCP/IP, you can do this by starting mysqld with --skip-networking.

PHP远程连接MYSQL速度慢,有时远程连接到MYSQL用时4-20秒不等,本地连接MYSQL正常,出现这种问题的主要原因是,默认安装的MYSQL开启了DNS的反向解析,在MY.INI(WINDOWS系统下)或MY.CNF(UNIX或LINUX系统下)文件的[mysqld]下加入skip-name-resolve这一句。

MYSQL远程连接速度慢的解决方法
在局域网内连接其他机器的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

附,请根据情况开放

skip-name-resolve  一般我们只要这一项便可以 
skip-grant-tables

分享到:
评论

相关推荐

    Mysql 远程连接速度慢的解决方案

    Mysql 远程连接速度慢的解决方案

    MYSQL无法远程连接

    ### MySQL无法远程连接问题解析与解决方案 #### 一、问题背景 MySQL是一种广泛使用的开源关系型数据库管理系统,因其高效稳定而被众多企业和开发者所青睐。然而,在实际部署和使用过程中,有时会遇到无法进行远程...

    远程连接MySQL速度慢的解决方法以及MySQL解析DNS的流程图[附PDF下载]

    以上就是有关MySQL远程连接速度慢的解决方案以及MySQL如何解析DNS的详细介绍。如果需要更详细的信息,可以参考附带的PDF文档,通过提供的博文链接可以下载该文档,以获取图形化的流程图和更多深入的技术细节。此外,...

    MYSQL数据库远程连接

    MYSQL数据库远程连接,例程,需要有亦众的支持库才能编译。

    牛族MYSQL 远程连接器1.8

    【牛族MYSQL远程连接器1.8】是一款专为MySQL数据库设计的图形化远程连接工具,它使得用户可以通过直观的用户界面与远端MySQL服务器进行交互。这款软件简化了数据库管理,尤其是对于需要频繁跨网络操作数据库的专业...

    无法远程访问Mysql的解决方案

    无法远程访问Mysql的解决方案 Mysql 是一种关系型数据库管理系统,广泛应用于各种 web 应用程序中。然而,在实际应用中,我们常常会遇到无法远程访问 Mysql 的问题,这是由于 Mysql 的安全机制所致。下面我们将详细...

    设置mysql远程连接

    ### 设置MySQL远程连接知识点详解 #### 一、背景与需求 在进行数据库管理与应用开发的过程中,有时我们需要从远程服务器访问MySQL数据库。这通常适用于分布式系统或需要进行远程调试及维护的情况。为了实现这一...

    详解Navicat远程连接mysql很慢

     如果你连接远程数据库(Linux系统)并且很慢(具体症状为第一次连接打开所有的表貌似不是很慢,正常的,但是隔几分钟后任意打开一张表就很慢,即时数据很少的表依然很慢),我们用命令找到配置文件(mysql5.7的) ...

    MySQL远程连接丢失问题解决方法(Lost connection to MySQL server)

    远程连接mysql是总是提示: 代码如下:Lost connection to MySQL server at ‘reading initial communication packet’, system error: 0 很明显这是连接初始化阶段就丢失了连接的错误。 google半天大多是说的注释掉...

    远程用户连接mysql授权

    4. **日志记录**:启用MySQL的日志记录功能,以便于监控远程连接活动和审计。 5. **性能考虑**:大量远程连接可能会对服务器性能造成影响,请合理规划并发连接数量。 #### 五、总结 通过本文介绍的步骤,您可以...

    mysql允许远程连接

    MySQL 远程连接设置 MySQL 是一个广泛使用的关系数据库管理系统,它提供了强大的数据存储和管理功能。但是,默认情况下,MySQL 帐号不允许从远程登录,只能在 localhost 登录。然而,在某些情况下,我们需要从远程...

    牛族MYSQL远程连接器1.6

    1 可以无需安装MYSQL数据库,用SuperMysql连接器可以连接远程MYSQL数据库。 2 远程数据库表直接显示在程序的显示框中,无需手工输入指令。 3 程序绑定了三个MYSQL指令。 增加功能: a 远程更改密码时可以自己定义...

    MySQL数据库远程连接很慢的解决方案

    MySQL数据库在某些情况下可能会出现远程连接速度慢的问题,这可能是由于多种原因造成的,但本文将主要探讨一种解决方案:开启`skip-name-resolve`配置。这个选项对于那些遇到因DNS解析延迟而导致远程连接性能下降的...

    Linux开启mysql远程连接

    通过上述步骤,我们已经成功地在Linux环境下开启了MySQL的远程连接功能,并解决了可能出现的一些常见问题。这些操作不仅有助于提升工作效率,也为日常运维工作提供了极大的便利。当然,在实际操作过程中还需要根据...

    XAMPP 设置远程连接MYSQL

    设置文件 开通防火墙端口 设置权限 让XAMPP远程连接MYSQL

    通过Navicat for MySQL远程连接的时候报错mysql 1130的解决方法.pdf

    Navicat for MySQL 远程连接错误 1130 解决方法 Navicat for MySQL 是一款功能强大的数据库管理工具,但是在远程连接 MySQL 服务器时,可能会遇到错误 1130,这是因为 MySQL 服务器不允许从远程主机连接。下面我们...

    如何解决局域网内mysql数据库连接慢

    通过内网连另外一台机器的mysql服务, 确发现速度N慢! 等了大约几十秒才等到提示输入密码。非常急人,有没有办法可以解决局域网内mysql数据库连接慢呢?下面小编带领大家来解决此问题,感兴趣的朋友一起看看吧

    MySql实现远程连接.txt

    在设置 MySQL 远程连接的过程中可能会遇到一些问题,以下是一些常见的解决方案: - **防火墙设置**:确保服务器的防火墙没有阻止 MySQL 的端口(默认为 3306)。 - **MySQL 配置文件**:编辑 `/etc/mysql/my.cnf` ...

    mysql远程连接失败解决方法.docx

    MySQL 远程连接失败解决方法 知识点1:MySQL 远程连接的必要条件 MySQL 远程连接需要满足两个必要条件:一是 MySQL 服务器需要开启远程登录功能,二是 MySQL 用户需要有远程连接的权限。在本文中,我们可以看到...

Global site tag (gtag.js) - Google Analytics