MySql出现连接过多异常错误解决

By | 2020年7月14日

1)该文章整理自网上的大牛和专家无私奉献的资料,具体引用的资料请看参考文献。
2)本文仅供学术交流,非商用。如果某部分不小心侵犯了大家的利益,还望海涵,并联系博主删除。
3)博主才疏学浅,文中如有不当之处,请各位指出,共同进步,谢谢。
4)此属于第一版本,若有错误,还需继续修正与增删。还望大家多多指点。大家都共享一点点,一起为祖国科研的推进添砖加瓦。

 1  MySql Host is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts' 解决方法
 2  环境:linux,mysql5.5.21
 3  错误:Host is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'
 4  原因:
 5    同一个ip在短时间内产生太多(超过mysql数据库max_connection_errors的最大值)中断的数据库连接而导致的阻塞;
 6  解决方法:
 7  1、提高允许的max_connection_errors数量(治标不治本):
 8  ① 进入Mysql数据库查看max_connection_errors: show variables like '%max_connection_errors%'; 
 9  ② 修改max_connection_errors的数量为1000: set global max_connect_errors = 1000;
10  ③ 查看是否修改成功:show variables like '%max_connection_errors%';
11  2、使用mysqladmin flush-hosts 命令清理一下hosts文件(不知道mysqladmin在哪个目录下可以使用命令查找:whereis mysqladmin);
12   ① 在查找到的目录下使用命令修改:/usr/bin/mysqladmin flush-hosts -h192.168.1.1 -P3308 -uroot -prootpwd;
13   备注:
14     其中端口号,用户名,密码都可以根据需要来添加和修改;
15     配置有master/slave主从数据库的要把主库和从库都修改一遍的(我就吃了这个亏明明很容易的几条命令结果折腾了大半天);
16     第二步也可以在数据库中进行,命令如下:flush hosts;

 

请关注公众号获取更多资料

发表评论