最近在连接一台mysql时发现速度很慢,差不多要10s,但连接上后,进行查询等操作的速度并不慢,ping的响应速度也正常,查找资料后发现,mysql客户机连接到服务器时, 服务器在收到客户机请求后会对客户机的地址进行resolve, 直到查到客户机的地址才通过客户机的登录请求, 如果这个过程慢, 就会导致服务器认证时间过长。
解决方法有两个:
1. 服务器的配置/etc/my.conf mysqld中添加 skip-name-resolve参数, 然后重启服务器
2. 服务器的hosts文件中添加客户端的地址, 如192.168.1.100 server100