我有一个在 Mac OS X 10.4(达尔文内核版本 8.10.1)上运行的服务器系统。该服务器主要用作 Bugzilla 服务器,但还有一些其他基于 Web 的服务正在运行(Testlink、TikiWiki)。
Bugzilla 数据库中有大约 60000 个 bug,系统上大约有 300 个活跃用户。
Bugzilla 版本为 3.0,在 Perl 5.8.6、Apache 1.3.33 和 mySQL 5.0.38 上运行
有时,我们会遇到严重的问题,即 Bugzilla 抛出数据库错误:
Software error:
Can't connect to the database.
Error: Too many connections
我已经有几个可能解决这个问题的方法,但我想提出一个更普遍的问题,你将如何调试这些类型的问题?
现在我们已经设置了以下内容来监控 mySQL 数据库:
- 每 5 分钟转储一次完整的 mysql 进程列表的 cron 作业
- 在 my.cnf 中启用 log-slow-queries 以记录耗时超过 15 秒的查询
我们刚刚开始收集这些数据,看看是否能找到“连接太多”问题的原因。
是否有其他方法可以监控 mySQL 数据库并帮助诊断问题的根本原因?