报错“Host is blocked because of many connection errors”处理

原因:同一个ip在短时间内产生太多(超过mysql数据库max_connection_errors的最大值)中断的数据库连接而导致的阻塞;

解决办法:

  1.  提高错误连接数

    提高允许的max_connection_errors数量,首先查看该属性设置为多大。命令:

    show global variables like ‘%max_connect_errors%’;

    当客户端连接服务端超时(超过connect_timeout), 服务端就会给这个客户端记录一次error,当出错的次数达到max_connect_errors的时候,这个客户端就会被锁定。所以根据业务来尽量把这个值设置大一点,mysql默认值为100,我们可以根据具体需要设置大一点,这里设置为1000.(并非越大越好,越大被攻击时安全性越低)。使用命令:

    set global max_connect_errors=300;

    设置后立马生效。这里我们可以查看一下,是否修改成功,使用命令:

    show global variables like ‘%max_connect_errors%’;

    到这一步,就解决了问题了。如果需要永久生效,得去修改mysql配置文件里相应属性。可能配置文件里没有这个属性,需要自己手动添加

  2. 清楚缓存

        也可以使用清楚缓存的方法。这样就会把计数清理掉。

        (1)到安装bin目录下,使用

mysqladmin -u root -p flush-hosts 

        命令,输入密码后,即完成清楚缓存。
        (2)也可以进入mysql控制台,执行:

flush hosts;

  • 9
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

七夜zippoe

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值