【问题标题】:What is the best way to diagnose and profile MySQL in live production server?在实时生产服务器中诊断和分析 MySQL 的最佳方法是什么?
【发布时间】:2009-03-06 14:16:38
【问题描述】:

您推荐哪些工具/方法来诊断和分析实时生产服务器中的 MySQL?

我的目标是测试扩展系统的替代方法,看看它们对读/写时间、内存、CPU 负载、磁盘访问等的影响,并找出瓶颈。

【问题讨论】:

    标签: mysql statistics profiling monitoring


    【解决方案1】:

    首先,您应该设置某种监控,例如:

    其他可能有用的工具:mytopinnotopmtopmaatkit

    此外,您应该在 my.cnf 中启用日志记录 slow-queries

    在您开始调整/更改参数之前,您应该创建某种 测试计划并比较之前/之后的结果以查看您的更改 有没有道理。

    【讨论】:

      【解决方案2】:

      这是我已经做了很多工作的事情。

      • MonYog - MySQL 监控服务。我们在生产中使用它。它不是免费的,但有很多功能,包括警报和历史数据。

      • MySQL Enterprise Monitor - 可用于 MySQL 企业(即不便宜)

      • 自己动手!

      关于滚动您自己的选项:

      我们实际上开发了一个非常酷的监控应用程序,它使用RRD tool(由常见的 MRTG 使用)以及 MySQL 统计信息和系统统计信息(如 iostat)的组合。这不仅是一个很好的练习,而且还为我们提供了极大的灵活性,可以通过单个界面准确监控我们想要的内容。

      这里是Brief Description 的一些构建您自己的统计数据的方法。

      尽管我们也使用 MonYog,但我们推出自己的产品的一大动机是跟踪磁盘统计信息。磁盘 i/o 可能是一个主要瓶颈,标准 MySQL 监控系统没有 i/o 监控。我们使用iostat,它是systat 包的一部分。

      我们有一个界面,可以在磁盘 i/o 统计数据旁边显示 MySQL 统计数据图表,让我们能够真正全面了解 MySQL 负载如何影响磁盘 i/o。

      在此之前,我们真的不知道为什么我们的生产应用程序会陷入困境。我们发现磁盘 i/o 是一个主要问题,当我们运行复杂查询时,MySQL 会在磁盘上创建大量临时表。我们能够优化查询并显着提高磁盘性能。

      【讨论】:

        【解决方案3】:

        Jet Profiler 肯定的

        【讨论】:

          【解决方案4】:

          同时添加到列表中:RHQ 4(开源)--http://rhq-project.org/

          【讨论】:

            【解决方案5】:

            Vote http://tinyurl.com/vote-gif 加入列表:

            【讨论】:

              猜你喜欢
              • 2011-05-06
              • 2016-08-09
              • 2021-11-11
              • 2010-09-20
              • 1970-01-01
              • 2010-09-22
              • 1970-01-01
              • 2010-09-06
              • 1970-01-01
              相关资源
              最近更新 更多