PHP/mySQL:如何调试“连接过多”错误?

PHP/mySQL:如何调试“连接过多”错误?

我现在正在客户的专用服务器上使用 PHP 网站,有时会收到错误,too many connections但大约有 5 个用户正在浏览此页面。

phpMyAdmin我可以看到该max connections变量被设置为400

在我们公司的本地 MySQL 服务器上,我们已将max connections其设置为200其他伙伴同时使用该服务器。

我听说在他们的服务器上其他一些网站也使用相同的 MySQL,但流量很大。

以下是我的问题:

  • 如何调试这个问题?
  • 我可以查看过去 10 分钟内执行的一些 SQL 查询列表来检查这是我们的问题还是他们的问题吗?

答案1

您描述的症状指向持久连接。在某些设置中,PHP 不能很好地处理持久连接:它倾向于打开新连接而不是重用现有连接。我建议您禁用此功能,然后查看问题是否仍然存在:

如果您注意到有所改善,您可以尝试微调持续呼叫或永久摆脱它们。

相关内容