如何分析 MySQL Slow Query Log 或 MySQL General Query Log?

Mon*_*hon 1 mysql linux log-analysis mysqldumpslow mysql-slow-query-log

分析日志是一个主要问题。如果你有一个遗留代码和成百上千的查询在运行,你肯定会对改进什么、改进哪里以及改进多少感到困惑,因为在你将投入多少努力之间总是需要权衡在某个优化问题上。

那么,第一步是分析我们哪里出错了。这只能通过正确分析日志来实现。没有它,您可能不知道您的应用程序到底出了什么问题。

那么你如何分析 MySQL 日志呢?

Sev*_*Jr. 5

一种选择:Percona 工具包

几个月前对慢日志进行了大量分析。

而且我觉得Percona Toolkit非常有用。使用此工具包,您可以轻松地对慢速日志进行彻底分析,并轻松进行数据库优化。

列举一些用于分析 SLOW LOGS 的有用函数:

pt-query-digest

可以分析来自 MySQL 慢速、一般和二进制日志的查询。(二进制日志必须首先转换为文本,请参阅--type)。它还可以使用来自 tcpdump 的 SHOW PROCESSLIST 和 MySQL 协议数据。默认情况下,该工具会报告哪些查询最慢,因此最需要优化。可以使用 --group-by、--filter 和 --embedded-attributes 等选项创建更复杂和定制的报告。

使用示例 pt-query-digest slow.log

pt-index-usage

从日志中读取查询并分析它们如何使用索引。

想要查询更多的信息.​​..

安装

好吧,不是每个人都可以使用这个工具,但如果可以的话,这应该会很有帮助。