[Mysql-2] 远程连接数据库错误:host 'xxx.xxx' is blocked because of many connection errors

测试平台突然接口全部报错,赶紧查看日志:

com.github.pagehelper.PageException: java.sql.SQLException: null,  message from server: "Host 'xxx.xxx.xxx.xx' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'"
Connection closing...Socket close.ageException: java.sql.SQLException: null,  message from server: "Host 'xxx.xxx.xxx.xx' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'"

报错原因

错误原因其实报错信息已经给出:一个IP因为过多的连接错误(超过mysql数据库max_connection_errors的最大值)被数据库服务器阻塞

解决方案

解决方案有多种,可以根据实际情况进行选择:

方法1、清除错误记录
在控制台执行 flush-hosts 即可(或者在navicat等连接工具上进入mysql库,执行该指令)。这个方法直接有效,但如果连接错误继续发生,迟早会再次触发报错。

方法2、修改max_connection_errors

  1. 首先查看该值:show global variables like ‘%max_connect_errors%’;
    在这里插入图片描述
  2. 然后修改该属性:set global max_connect_errors = 1000
  3. 重复步骤1,可以看到修改生效

方法3、修改配置文件

方法2的修改只是临时方案,要想永久性修改属性值,需要修改mysql的配置文件。如果配置文件里没有这个属性,自己手动添加:max_connect_errors = 1000

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

云深i不知处

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

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

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

打赏作者

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

抵扣说明:

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

余额充值