碰到了一个奇怪的问题,连接 mysql (版本 5.6)的时候,
提示 xxxx ip is blocked because of many connection errors 的错误
按照 mysql 官网的说法,mysql 的 performance_schema 数据库的 host_cache 表里面会记录下这些错误的
connection, 如果超过了 max_connect_error 这个值,就会进行 block 操作,通过 flush hosts 的命令可以进行
解锁操作。
但是我进入到这个 host_cache 表,发现里面的记录竟然是空的、。。。。不知道 mysql 是怎么去判断 block 的。。。。
而且我通过 flush hosts 命令 还能成功的进行 unblock ip 操作
下面是 mysql 官网的说法: The MySQL server maintains a host cache in memory that contains information about clients: IP address, host name, and error information. The Performance Schema host_cache table exposes the contents of the host cache so that it can be examined using SELECT statements. This may help you diagnose the causes of connection problems. See Section 22.12.10.1, “The host_cache Table”.
1
Buffer2Disk OP 哦。。。愚蠢了,mysql 官网另外一个文档页面写了。。
Because the host_cache table exposes the contents of the host cache, it can be examined using SELECT statements. This may help you diagnose the causes of connection problems. [The Performance Schema must be enabled or this table is empty.] |