首页 > 解决方案 > 有足够的连接,但由于许多连接错误,主机 'xxxx' 仍然被阻止;使用 'mysqladmin flush-hosts' 解除阻塞

问题描述

我正在使用 .net core 3.1 和 mysql 连接器 8.0.21。在 mysql 中,我的 max_connection 大约为 3000,max_user_connection 为 0(无限制)

在各种应用程序中的连接池设置中,我保留的总连接数约为 2800。有时我偶尔会遇到上述错误。知道可能是什么问题。

在我的应用程序中,数据库访问有两种实现。一个是 dapper,另一个是旧的 vanilla ado.net 实现。奇怪的是当我们通过查询查询与所有用户的连接数时

SELECT IFNULL(usr,'All Users') USER,IFNULL(hst,'All Hosts') HOST,COUNT(1) Connections
FROM
(
    SELECT USER usr,LEFT(HOST,LOCATE(':',HOST) - 1) hst
    FROM information_schema.processlist
    WHERE USER NOT IN ('system user','root')
) A GROUP BY usr,hst WITH ROLLUP;

结果远远低于连接的限制。mysql错误日志中也没有什么

https://bugs.mysql.com/bug.php?id=24761 我们的服务器也有安装nagios

标签: mysqlasp.net-core-3.1

解决方案



推荐阅读