参数max_connect_errors

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

max_connect_errors 这个参数控制登陆失败尝试次数,也就是你可以有多少次机会重试登陆;


可以通过status中查看下面两个参数:


Aborted_clients 表示已经成功建立连接的登陆,然后超时断开,或者kill掉的次数;

Aborted_connects 表示失败尝试连接的次数;


例:


session1:


mysql>show global variables like '%max_connect_errors%';

+--------------------+-------+

| Variable_name      | Value |

+--------------------+-------+

| max_connect_errors | 5     |

+--------------------+-------+


开始演示前的数据库原始数据:

mysql>show global status like '%abort%';

+------------------+-------+

| Variable_name    | Value |

+------------------+-------+

| Aborted_clients  | 0     |

| Aborted_connects | 0     |

+------------------+-------+


session2:


mysql>show processlist;

+----+------+-----------+------+---------+------+----------+------------------+

| Id | User | Host      | db   | Command | Time | State    | Info             |

+----+------+-----------+------+---------+------+----------+------------------+

|  2 | root | localhost | NULL | Sleep   |    8 |          | NULL             |

|  3 | root | localhost | NULL | Query   |    0 | starting | show processlist |

+----+------+-----------+------+---------+------+----------+------------------+


干掉现在的连接:

mysql>kill 3;


session1:


可以看到aborted_client变成1,表示原来的一次成功登陆又断开连接了:


mysql>show global status like '%abort%';       

+------------------+-------+

| Variable_name    | Value |

+------------------+-------+

| Aborted_clients  | 1     |

| Aborted_connects | 0     |

+------------------+-------+


session2:


重复这个命令8次:


[root@Darren1 ~]# mysql -uroot -p111

mysql: [Warning] Using a password on the command line interface can be insecure.

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)


session1:


再回来看aborted_connects变成8 ,表示尝试了8次错误密码登陆


mysql>show global status like '%abort%';       

+------------------+-------+

| Variable_name    | Value |

+------------------+-------+

| Aborted_clients  | 2     |

| Aborted_connects | 8     |

+------------------+-------+


这里有个问题:前面尝试了8次错误密码登陆,为什么 还可以继续尝试登陆呢,为什么max_connetc_errors=5没有生效呢?


这是因为通过mysql -uroot -p111这种本地客户端的网络方式尝试连接,只会提示密码错误,没有失败登陆限制,max_connect_errors这个参数对其他连接方式有限制。


例:


在cmd中:


连续执行6次,会报错,意思就是说尝试次数超过max_connect_errors限制,要想重新登陆,必须执行flush hosts;


C:\Users\cdh>telnet 192.168.91.16 3306

ERROR 1129 (00000):Host '192.168.91.1' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'


mysql>flush hosts;

Query OK, 0 rows affected (0.01 sec)


或者用:


[root@Darren1 ~]# mysqladmin -uroot -p147258 flush-hosts;




本文转自 Darren_Chen 51CTO博客,原文链接:http://blog.51cto.com/darrenmemos/1885377,如需转载请自行联系原作者
相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
6月前
|
人工智能
Timeout on reading data from socket
Timeout on reading data from socket
62 3
|
23天前
|
SQL 关系型数据库 MySQL
mysql:1153 Got a packet bigger than ‘max_allowed_packet’ bytes的解决方法
mysql:1153 Got a packet bigger than ‘max_allowed_packet’ bytes的解决方法
10 0
|
4月前
|
SQL 关系型数据库 MySQL
[ERR] 2006 - MySQL server has gone away,Got a packet bigger than 'max_allowed_packet' bytes
[ERR] 2006 - MySQL server has gone away,Got a packet bigger than 'max_allowed_packet' bytes
30 0
|
关系型数据库 MySQL 数据库
mysql下的max_allowed_packet参数设置
mysql下的max_allowed_packet参数设置
824 0
|
7月前
|
JavaScript 前端开发 开发工具
关于错误消息 RangeError - Maximum call stack size exceeded at XXX
关于错误消息 RangeError - Maximum call stack size exceeded at XXX
37 0
|
11月前
【WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, st】
【WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, st】
143 0
|
关系型数据库 MySQL 数据安全/隐私保护
被我误解的max_connect_errors
谈谈被我误解的max_connect_errors
被我误解的max_connect_errors
|
SQL 关系型数据库 MySQL
mysql的 max_allowed_packet 和 max_connections
mysql的 max_allowed_packet 和 max_connections
172 0
|
缓存 关系型数据库 MySQL
mysql数据库导入报错:Got a packet bigger than‘max_allowed_packet’bytes解决方案
mysql数据库导入报错:Got a packet bigger than‘max_allowed_packet’bytes解决方案
173 0
mysql数据库导入报错:Got a packet bigger than‘max_allowed_packet’bytes解决方案
|
缓存 网络协议 关系型数据库
max_connect_errors参数
一次ERROR 1129 (HY000): Host 'xxx.xxx.xxx.xxx' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'报错,重新认识max_connect_errors参数。
1882 0