码迷,mamicode.com
首页 > 数据库 > 详细

Host XXX is blocked because of many connection errors, unblock with 'mysqladmin flush-hosts

时间:2014-09-25 23:54:08      阅读:189      评论:0      收藏:0      [点我收藏+]

标签:mysql

连接MySQL失败,除了权限问题之外,还遇到这种情况,出错信息:Host XXX is blocked because of many connection errors, unblock with ‘mysqladmin flush-hosts‘。而且XXX还不是IP地址而是domain name。MySQL服务器和客户端在同一台测试及其上,连接的时候用的mysql -u root -h ipaddr。

查看机器的hosts配置,确实有domain name映射到本机地址,但是有变化,旧的已经注视掉,但错误信息显示的host name是注释掉的结果,应该跟缓存有关。

原因:MySQL服务器已经从某个host接收了大量中途终止的连接,于是决定终止继续接收来自该host的连接,允许最大的连接错误数为max_connect_errors,通过show variables命令可以查询,一般为10。

出现domain name而不是IP的原因是MySQL服务端在接收连接的时候会对客户端作DNS resolve,结果会被mysqld缓存,如果只用IP连接,可以在启动mysqld时加上-skip-name-resolve参数(命令行或my.cnf)。

解决方法:在另外一处地方执行mysqladmin flush-host或者登录进mysql执行flush hosts(本机host已经不允许登录!)。


本文出自 “越努力,越幸运!” 博客,请务必保留此出处http://7250365.blog.51cto.com/7240365/1558205

Host XXX is blocked because of many connection errors, unblock with 'mysqladmin flush-hosts

标签:mysql

原文地址:http://7250365.blog.51cto.com/7240365/1558205

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!