Host XXX is blocked because of many connection errors

连接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已经不允许登录!)。
根据引用\[1\]和引用\[2\]的内容,报错"Host is blocked because of many connection errors"是因为在短时间内同一个IP产生了太多中断的数据库连接,导致被阻塞。解决这个问题的方法有两种: 1. 提高允许的max_connection_errors数量:可以通过修改max_connection_errors的值来增加允许的错误连接数量。可以使用以下命令查看当前的max_connection_errors值:`show variables like '%max_connection_errors%';`,然后使用以下命令将其修改为较大的值,例如1000:`set global max_connect_errors = 1000;`。如果需要重启后仍然生效,可以在my.cnf配置文件中的\[mysqld\]下添加`max_connect_errors = 1000`。 2. 重置错误记录数:可以使用以下命令来重置错误记录数:`flush hosts;`或者`mysqladmin flush-hosts -h 127.0.0.1 -uroot -p`。 需要注意的是,根据业务需要设置max_connection_errors的值,不是越大越好,过大的值可能会降低安全性。默认情况下,MySQL的max_connection_errors值为10。 #### 引用[.reference_title] - *1* [应用连MySQL 报错ERROR 1129 Host is blocked because of many connection errors](https://blog.csdn.net/Hehuyi_In/article/details/111595351)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [mysqlHost is blocked because of many connection errors”](https://blog.csdn.net/m0_37312111/article/details/78717314)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值