当我使用错误的密码连接到mysql服务器时,测试计数在max_connect_errors
上,并且我发现Aborted_connects
也会随着计数而出现,但是主机仍然没有被阻塞。
那么,Aborted_connects
在max_connect_errors
上是否会被阻塞,那么host_name会被阻塞吗?
发布于 2011-08-31 12:32:30
此时,您可能需要运行冲洗主机并查看是否解除阻塞。
MySQL文档中提到了关于刷新主机的内容:
为什么主机一开始就被阻塞了??
根据MySQL文档的说法:
如果您得到以下错误,这意味着mysqld收到了来自主机'host_name‘的许多连接请求,这些请求在中间被中断:主机'host_name’由于许多连接错误而被阻塞。用'mysqladmin刷新-主机‘解除阻塞,允许的中断连接请求的数量由max_connect_errors系统变量的值决定。在max_connect_errors失败请求后,mysqld假设有问题(例如,有人试图闯入),并阻止主机与进一步的连接,直到执行mysqladmin刷新主机命令或发出刷新主机语句。见5.1.3节,“服务器系统变量”。默认情况下,mysqld在10个连接错误后阻塞主机。您可以通过如下方式启动服务器来调整值:
shell> mysqld_safe --max_connect_errors=10000 &
如果为给定主机获得此错误消息,应首先验证来自该主机的TCP/IP连接没有任何问题。如果您有网络问题,增加max_connect_errors变量的值对您没有好处。
发布于 2013-01-15 20:19:57
造成这种阻塞的原因之一是主机上的某个随机人员决定对MySQL进行一些监视,并在远程服务器上为MySQL端口设置一个telnet。如果有足够数量的telnet调用,主机将被阻止对该MySQL服务器的进一步访问。与某些服务器不同的是,MySQL不会在合理的时间之后自动解除对MySQL的访问:服务器管理员必须敲MySQL的头。
发布于 2021-08-18 05:52:54
为了诊断这个问题,您可以尝试运行
select * from performance_schema.host_cache
表格应从5.6开始。更多信息,这里。例如,COUNT_MAX_USER_CONNECTIONS_PER_HOUR_ERRORS
和COUNT_SSL_ERRORS
中错误数量的增加可能会给您提示。
5.1.11.2 DNS查找和主机缓存MySQL服务器维护内存中的主机缓存,其中包含有关客户端的信息: IP地址、主机名和错误信息。Performance host_cache表公开主机缓存的内容,以便可以使用SELECT语句对其进行检查。这可能有助于您诊断导致连接问题的原因。_缓存表见22.12.10.1节,“主持人”“。
https://dba.stackexchange.com/questions/5242
复制相似问题