MySQL 连接保持打开状态(我认为...)

标签 mysql

好吧,所以今天早上我收到了来 self 的 vbulletin 网站的大量自动邮件垃圾邮件,其中显示 mysql 错误

`Can't connect to MySQL server on '127.0.0.1'"

Too many connections

User username already has more than 'max_user_connections' active connections`.

我以前从未在我的主机上遇到过这种情况,我的两个网站上没有那么多访问者。一个运行 vbulletin 的网站每天有 300-700 次访问,而我的第二个网站是我自己建立的,所以这可能是连接保持开放的来源,我昨天开始为它做广告,但它也没有吸引很多访问者,所以我不不要认为只是连接的用户太多,我认为是连接保持打开状态或其他原因...

是否有某种方法可以找出其来源,或者连接保持打开时间过长的位置,或者任何信息实际上都会有所帮助。

谢谢

最佳答案

在 MySQL shell 中,您可以运行 show processlist;,它将显示当前正在运行的进程、登录的用户、他们选择的数据库以及他们来自哪个主机。这可能会为您提供一些关于过度连接来源的线索。也许您会看到运行了很长时间的查询(结合不耐烦的用户反复点击刷新)。

请记住,如果您的任何代码使用持久连接运行,该列表中将会有一堆空闲进程,这在这种情况下是完全正常的。

关于MySQL 连接保持打开状态(我认为...),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11504337/

相关文章:

mysql - 如何在联结表上插入值

mysql - 列连接以合并值

php - 以概率选择随机条目

每行中的PHP bootstrap 4模态删除按钮

mysql - Join 和 Group by Clause 给出了错误的输出

php - 删除重复记录而不创建临时表

php - 恢复迁移到 Magento 2 的产品描述中的换行符

MySQL 查询返回重复结果

mysql - 如何创建不允许插入的 MySQL 表

php - 状态和分页的mysql问题