mysql - 有足够的连接,但由于许多连接错误,主机 '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
解决方案
推荐阅读
- laravel - 我认为我的代码有问题?
- java - ElasticSearch java列出字段的唯一值
- php - 如何在指定时间自动清空表
- java - 使用正则表达式替换可以在字符串中更改的参数
- excel - 比较 VLOOKUP 中的 2 列后替换值
- postman - 调用 managedDevices 在 POSTMAN 中返回错误,但在 PowerShell 中有效
- javascript - 通过输入更改(keyup)更改 jquery 滑块位置
- python - 这是 Python 中某种类型的装饰器吗?
- java - 如何使用火花加入两个具有 OR 条件的数据集
- xamarin.forms - 在 Xamarin Forms 中控制单页方向和视图旋转