MYSQL教程Mysql DNS反向解析导致连接超时过程分析(skip-name-res
《MYSQL教程Mysql DNS反向解析导致连接超时过程分析(skip-name-resolve)》要点: 可以在配置文件里面禁止MySQL进行反向DNS解析,只需在my.cnf的[mysqld]段落中加入如下行即可: skip-name-resolve (windows与linux下一样的) MYSQL数据库设备在连接mysql时候,等待服务器的banner信息需要4s左右,影响了Mysql服务的连接速度. MYSQL数据库1、Telnet端口验证 MYSQL数据库通过设备和虚拟机(Linux系统)分别Telnet Mysql服务的端口,会出现一下现象: MYSQL数据库设备(UAG/SCANNER): telnet后,等待Mysql的服务器端回应大概需要等10s左右. MYSQL数据库[DPtech-Developer-Shell]telnet 10.101.0.206 3308 MYSQL数据库[root]~# telnet 10.101.0.206 3308 MYSQL数据库2、通过程序进行验证 MYSQL数据库具体源代码见附件:验证程序源代码 MYSQL数据库在设备上和虚拟机中的结果分别如下: MYSQL数据库[DPtech-Developer-Shell]/tcpclient_mips 10.101.0.1 3306 MYSQL数据库虚拟机: MYSQL数据库[root]tcp_demo# ./tcpclient 10.101.0.1 3306 MYSQL数据库可以发现,设备上大约比Linux服务器多耗时9s,其中10秒钟可能是recv本身超时的时间. MYSQL数据库3、通过不同操作系统进行Telnet验证 MYSQL数据库通过Windows系统和Linux虚拟机、设备,分别通过Telnet进行连接尝试,通过抓包分析得知,只有设备的耗时比较长,其他的耗时都比较短. MYSQL数据库Mysql论坛的提问: MYSQL数据库http://forums.mysql.com/read.php?11,250982,250982#msg-250982 MYSQL数据库另外通过自己写的C代码进行连接的时候也存在同样的问题,修改skip-name-resolve以后,实际上就可以发现该问题已经不存在了: MYSQL数据库设备: MYSQL数据库[DPtech-Developer-Shell]/tcpclient_mips 10.101.0.1 3306 MYSQL数据库通过虚拟机Telnet连接另外一个ip 10.101.0.206时候发现速度也比较慢,消耗的时间基本上和设备中相当,可能是由于虚拟机和宿主主机之前不需要进行反向域名解析,或者说是应为系统本身就知道虚拟机IP地址(NAT模式)对应的主机名,所以不需要进行DNS反向解析,导致在虚拟机中出现了特殊情况. 欢迎参与《MYSQL教程Mysql DNS反向解析导致连接超时过程分析(skip-name-resolve)》讨论,分享您的想法,编程之家PHP学院为您提供专业教程。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |