您现在的位置: 万盛学电脑网 >> 程序编程 >> 数据库 >> mysql教程 >> 正文

MySQL出现大量unauthenticated user

作者:佚名    责任编辑:admin    更新时间:2022-06-22

   问题状态

  重启mysql也尽是失败,看mysql的errorlog,只能看到类似如下的信息:

  Forcing close of thread 12232 user: 'root'

  用mysqladmin 简单的监控了下mysql的情况:

  mysqladmin -uroot -p******** status -i 1

  发现Queries per second avg只有200左右,可以说很低,但是Threads 确非常不稳定,居然会瞬间升级200以上,一般情况下这个线程这个值都是不会高于5的个位数!

  mysqladmin -uroot -p******** processlist

  | 2007 | unauthenticated user | 192.168.4.29:58519 | | Connect | | login | |

  | 2008 | unauthenticated user | 192.168.4.29:58553 | | Connect | | login | |

  | 2009 | unauthenticated user | 192.168.4.29:58571 | | Connect | | login | |

  | 2010 | unauthenticated user | 192.168.4.29:58577 | | Connect | | login | |

  | 2011 | unauthenticated user | 192.168.4.29:58579 | | Connect | | login | |

  | 2012 | unauthenticated user | 192.168.4.29:58589 | | Connect | | login | |

  原因分析

  MySQL会尝试去反查IP->DNS,由于反查解析过慢,无法应付快速多量的查询。

  解决办法

  解决方式很简单:启动MySQL的时候,添加--skip-name-resolve选项

  重新载入配置文件或者重启MySQL服务即可。