【发布时间】:2021-02-27 00:38:57
【问题描述】:
我在高峰时段遇到问题,我得到“建立数据库连接时出错”。在日志中,它是“连接太多”。如果不先重新启动 mysql,我无法手动连接到数据库。
我检查了数据库中发生的情况,看起来它主要是处于睡眠状态的进程。我不知道为什么。
在服务器上,我运行 10 多个带有各种主题和插件的 Wordpress 站点(全部通过 https://spinupwp.com/)。我现在所做的是运行MySQLTuner-perl 并实施了它的建议,因为 MySQL 处于默认设置中。而且我正在等待高峰时段,这不是我认为的最聪明的时间。
你能推荐我一种方法来识别哪个 PHP 文件或 http 请求对此负责吗?
mysql> show processlist;
+-------+-------+-----------+-----------------------+---------+------+----------+------------------+
| Id | User | Host | db | Command | Time | State | Info |
+-------+-------+-----------+-----------------------+---------+------+----------+------------------+
| 423 | dbuser | localhost | NULL | Query | 0 | starting | show processlist |
| 448 | dbuser | localhost | my_dbname_wp | Sleep | 242 | | NULL |
| 452 | dbuser | localhost | my_dbname_wp | Sleep | 242 | | NULL |
| 455 | dbuser | localhost | my_dbname_wp | Sleep | 241 | | NULL |
| 936 | dbuser | localhost | my_dbname_wp | Sleep | 217 | | NULL |
| 5715 | dbuser | localhost | my_dbname_wp | Sleep | 164 | | NULL |
| 8669 | dbuser | localhost | my_dbname_wp | Sleep | 139 | | NULL |
| 10353 | dbuser | localhost | my_dbname_wp | Sleep | 125 | | NULL |
| 10631 | dbuser | localhost | my_dbname_wp | Sleep | 123 | | NULL |
| 10724 | dbuser | localhost | my_dbname_wp | Sleep | 122 | | NULL |
| 10867 | dbuser | localhost | my_dbname_wp | Sleep | 121 | | NULL |
| 11084 | dbuser | localhost | my_dbname_wp | Sleep | 119 | | NULL |
| 11102 | dbuser | localhost | my_dbname_wp | Sleep | 119 | | NULL |
| 11226 | dbuser | localhost | my_dbname_wp | Sleep | 118 | | NULL |
| 11669 | dbuser | localhost | my_dbname_wp | Sleep | 114 | | NULL |
| 11726 | dbuser | localhost | my_dbname_wp | Sleep | 114 | | NULL |
| 11851 | dbuser | localhost | my_dbname_wp | Sleep | 113 | | NULL |
| 11994 | dbuser | localhost | my_dbname_wp | Sleep | 112 | | NULL |
| 12006 | dbuser | localhost | my_dbname_wp | Sleep | 112 | | NULL
【问题讨论】:
-
请发布新的“显示完整进程列表;”与您的原始版本进行比较。
-
显示完整的进程列表;将包括正在运行的 QUERY。并发布整个输出,而不仅仅是第一页。您可能需要发布到 pastebin.com 并分享链接,拜托。还要发布用于连接、处理、断开连接的 PHP 代码。好像有人忘记“关闭”连接了。