Host ‘xxx’ is blocked because of many connection errors

By | 2023年8月8日

Host 'xxx' is blocked because of many connection errors

最近一台mysql服务器报错:ERROR 1129 (00000): Host 'xxx' is blocked because of many connection errors. Unblock with 'mysqladmin flush-hosts'。

问题原因

因为同一个IP在短时间内产生太多中断的数据库连接(超过max_connect_errors的最大值)而导致的

关于某个IP输入了错误密码,MySQL会在performance_schema数据库下的host_cache表中记录。它会累计记录在COUNT_AUTHENTICATION_ERRORS字段

解决方法

知道了问题原因就容易着手解决问题了

临时解决方法

  1. 增加max_connection_errorsd的值
  2. 情况错误数据记录表
    flush hosts

根本解决方法

找到频繁报错的所在应用,将错误的密码调整正确,避免产生新的连接错误