知识大全 剖析服务器负载(1)[2]

Posted 工具

篇首语:阳光照亮世界,知识照亮人生。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 剖析服务器负载(1)[2]相关的知识,希望对你有一定的参考价值。

高性能MySQL:剖析服务器负载(1)[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  分析查询日志

  强烈建议大家从现在起就利用慢查询日志捕获服务器上的所有查询 并且进行分析 可以在一些典型的时间窗口如业务高峰期的一个小时内记录查询 如果业务趋势比较均衡 那么一分钟甚至更短的时间内捕获需要优化的低效查询也是可行的

  不要直接打开整个慢查询日志进行分析 这样做只会浪费时间和金钱 首先应该生成一个剖析报告 如果需要 则可以再查看日志中需要特别关注的部分 自顶向下是比较好的方式 否则有可能像前面提到的 反而导致业务的逆优化

  从慢查询日志中生成剖析报告需要有一款好工具 这里我们建议使用pt query digest 这毫无疑问是分析MySQL 查询日志最有力的工具 该工具功能强大 包括可以将查询报告保存到数据库中 以及追踪工作负载随时间的变化

  一般情况下只需要将慢查询日志文件作为参数传递给pt query digest 就可以正确地工作了 它会将查询的剖析报告打印出来 并且能够选择将 重要 的查询逐条打印出更详细的信息 输出的报告细节详尽 绝对可以让生活更美好 该工具还在持续的开发中 因此要了解最新的功能请阅读最新版本的文档

  这里给出一份pt query digest输出的报告的例子 作为进行性能剖析的开始 这是前面提到过的一个味修改过的剖析报告

  # Profile

  # Rank Query ID Response time Calls R/Call V/M Item

  # ==== ================== ================ ===== ====== ===== =======

  # xBFCF E F F % SELECT InvitesNew?

  # x B CAB B C EC % SELECT StatusUpdate?

  # xB CC CC % SHOW STATUS

  # xCB D B B B CF % SHOW STATUS

  # MISC xMISC % < ITEMS>

  可以看到这个比之前的版本多了一些细节 首先 每个查询都有一个ID 这是对查询语句计算出的哈希值指纹 计算时去掉了查询条件中的文本值和所有空格 并且全部转化为小写字母(请注意第三条和第四条语句的摘要看起来一样 但哈希指纹是不一样的) 该工具对表名也有类似的规范做法 表名InvitesNew 后面的问号意味着这是一个分片(shard)的表 表名后面的分片标识被问号替代 这样就可以将同一组分片表作为一个整体做汇总统计 这个例子实际上是来自一个压力很大的分片过的Facebook 应用

  报告中的V/M 列提供了方差均值比(variance to mean ratio)的详细数据 方差均值比也就是常说的离差指数(index of dispersion) 离差指数高的查询对应的执行时间的变化较大 而这类查询通常都值得去优化 如果pt query digest 指定了 explain 选项 输出结果中会增加一列简要描述查询的执行计划 执行计划是查询背后的 极客代码 通过联合观察执行计划列和V/M 列 可以更容易识别出性能低下需要优化的查询

  最后 在尾部也增加了一行输出 显示了其他 个占比较低而不值得单独显示的查询的统计数据 可以通过 limit 和 outliers 选项指定工具显示更多查询的详细信息 而不是将一些不重要的查询汇总在最后一行 默认只会打印时间消耗前 位的查询 或者执行时间超过 秒阈值很多倍的查询 这两个限制都是可配置的

       返回目录 高性能MySQL

       编辑推荐

       ASP NET开发培训视频教程

  数据仓库与数据挖掘培训视频教程

       Oracle索引技术

cha138/Article/program/MySQL/201311/29715

相关参考

知识大全 剖析服务器负载(2)[2]

高性能MySQL:剖析服务器负载(2)[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  #m

知识大全 剖析服务器负载(1)[1]

高性能MySQL:剖析服务器负载(1)[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  剖析

知识大全 使用SQL服务器内置的错误寻找器寻找和剖析错误

使用SQL服务器内置的错误寻找器寻找和剖析错误  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  大

知识大全 PHP程序加速探索之服务器负载测试

PHP程序加速探索之服务器负载测试  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  服务器负载太大

知识大全 PHP监控linux服务器负载

PHP监控linux服务器负载  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  由于WebServ

知识大全 剖析单条查询(2)[1]

高性能MySQL:剖析单条查询(2)[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  剖析单

知识大全 Tomcat集群与负载均衡

Tomcat集群与负载均衡  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  在单一的服务器上执行W

知识大全 剖析单条查询(1)[2]

高性能MySQL:剖析单条查询(1)[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  |ch

鳜鱼人工催产夏花培育失败原因剖析

一、亲鳜培育及选择1.培育池。培育池面积3.2亩,南北走向,池底淤泥8~10厘米,池深2.2米,水深1.5米以上,注排水方便。放养前用生石灰清塘,共施生石灰400千克。  2.亲鳜来源。亲鳜从江苏邗江

鳜鱼人工催产夏花培育失败原因剖析

一、亲鳜培育及选择1.培育池。培育池面积3.2亩,南北走向,池底淤泥8~10厘米,池深2.2米,水深1.5米以上,注排水方便。放养前用生石灰清塘,共施生石灰400千克。  2.亲鳜来源。亲鳜从江苏邗江