mysql_优化: ‘mysqladmin flush-hosts’问题的排查
程序员文章站
2022-04-20 23:01:40
问题1:mysqladmin flush-hostsHost is blocked because of many connection errors; unblock with ‘mysqladmin flush-hosts’;同一个ip在短时间内产生太多(超过mysql数据库max_connection_errors的最大值)中断的数据库连接而导致的阻塞;问题排查:被封的为公司内部ip,说明公司内有人请求数据库错误并且数量超出了数据库设置,造成该ip被封。解决办法1使用如下命令mysql&...
问题1:mysqladmin flush-hosts
Host is blocked because of many connection errors; unblock with ‘mysqladmin flush-hosts’;
同一个ip在短时间内产生太多(超过mysql数据库max_connection_errors的最大值)中断的数据库连接而导致的阻塞;
问题排查:
被封的为公司内部ip,说明公司内有人请求数据库错误并且数量超出了数据库设置,造成该ip被封。
解决办法1
使用如下命令
mysql> flush hosts;
但是一段时间后,又会出现该问题。
问题2: Packets out of order
查看日志会有Packets out of order 的错误情况。
问题排查:
可能公司同一段ip下,有人传输较大的文件,文件的大小大于数据库的设置,并且超过一定次数造成ip被封。
解决方法2
- show variables like ‘max_allowed_packet’,默认是1048576 意味着是1M
- my.cnf 中将max_allowed_packet= 1M 改大一些,最大可以改成128M; 一般差不多20M左右就好;
- set global max_allowed_packet = 20 * 1024 * 1024 ;然后重启MySQL就好了;
但是一段时间后,又出现该问题。
问题排查:
由于看不到具体报错信息,无法排查到人和项目。
最后前后端同事分别断网,并查看报错日志是否还在刷新,固定到个人,然后固定到项目。
解决方法3
查到一个同事使用mac版navicat连接服务器时由于密码错误,造成其不断的请求服务器mysql,错误数量超出限制导致问题1。
重新登录并采用方法1,解决问题。
本文地址:https://blog.csdn.net/weixin_43851310/article/details/107676443
上一篇: MySQL中limit用法
下一篇: sql注入基础