昨天服务突然变慢,打不开页面,开始以为是WEB服务出了问题,折腾半天也没见效。后来发现连MYSQL数据库较慢,但那台机器负载也不高。最终发现下面的现象:
mysql> show processlist;
+-----+----------------------+---------------------+------+---------+------+-----------------------------------------------------------------------+------------------+
| Id | User | Host | db | Command | Time | State | Info |
+-----+----------------------+---------------------+------+---------+------+-----------------------------------------------------------------------+------------------+
| 115 | unauthenticated user | 192.168.10.23:50060 | NULL | Connect | NULL | login | NULL |
| 116 | unauthenticated user | 192.168.10.23:60947 | NULL | Connect | NULL | login | NULL |
| 183 | unauthenticated user | 192.168.10.23:55370 | NULL | Connect | NULL | login | NULL |
| 184 | unauthenticated user | 192.168.10.23:56321 | NULL | Connect | NULL | login | NULL |
| 185 | unauthenticated user | 192.168.10.23:59908 | NULL | Connect | NULL | login | NULL |
| 186 | unauthenticated user | 192.168.10.23:57476 | NULL | Connect | NULL | login | NULL |
| 187 | unauthenticated user | 192.168.10.23:62415 | NULL | Connect | NULL | login
10 rows in set (0.00 sec)
有很多的 unauthenticated user 进程,后来一查,据说是MYSQL的BUG,反查DNS超时造成的。
解决办法:
1、修改my.ini文件,在 [mysqld] 行下添加 –skip-name-resolve ,重新启动mysql服务
2、访问的主机授权时用IP,最好把该主机的IP及主机名写到/etc/hosts文件中
mysql> show processlist;
+-----+----------------------+---------------------+------+---------+------+-----------------------------------------------------------------------+------------------+
| Id
+-----+----------------------+---------------------+------+---------+------+-----------------------------------------------------------------------+------------------+
| 115 | unauthenticated user | 192.168.10.23:50060 | NULL | Connect | NULL | login
| 116 | unauthenticated user | 192.168.10.23:60947 | NULL | Connect | NULL | login
| 183 | unauthenticated user | 192.168.10.23:55370 | NULL | Connect | NULL | login
| 184 | unauthenticated user | 192.168.10.23:56321 | NULL | Connect | NULL | login
| 185 | unauthenticated user | 192.168.10.23:59908 | NULL | Connect | NULL | login
| 186 | unauthenticated user | 192.168.10.23:57476 | NULL | Connect | NULL | login
| 187 | unauthenticated user | 192.168.10.23:62415 | NULL | Connect | NULL | login
10 rows in set (0.00 sec)
有很多的 unauthenticated user 进程,后来一查,据说是MYSQL的BUG,反查DNS超时造成的。
解决办法:
1、修改my.ini文件,在 [mysqld] 行下添加 –skip-name-resolve ,重新启动mysql服务
2、访问的主机授权时用IP,最好把该主机的IP及主机名写到/etc/hosts文件中