查看: 5153|回复: 0
打印 上一主题 下一主题

MySQL微秒慢查询补丁

[复制链接]
跳转到指定楼层
1#
发表于 2008-11-5 10:21:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
台州网址导航
MySQL微秒慢查询(microtime slow query)补丁包具有以下特色:

识别连接

每个慢查询结果中都记录了是哪个连接线程引起的,如下:

# Thread_id: 571

微秒计数

可以记录执行时间在1秒一下的慢查询,选项long_query_time的单位现在是微秒,而不是秒,例如设置成300000表示0.3秒。

# Query_time: 0.021752  Lock_time: 0.000016  Rows_sent: 1  Rows_examined: 103

记录复制产生的慢查询
通常情况下,MySQL并不记录复制产生的慢查询,使用该补丁后,只需要打开选项--log-slow-slave-statements解决这一问题。


详细的查询执行计划
每次查询的执行计划都不一样。可能使用索引扫描,或者全表扫描,或者使用临时表。通常这些信息也能从EXPLAIN结果中得到。该补丁会在日志中显示了查询中最重要的几个方面,如下:

1.  # QC_Hit: No  Full_scan: No  Full_join: No  Tmp_table: Yes  Tmp_table_on_disk: No
2.  # Filesort: Yes  Filesort_on_disk: No  Merge_passes: 0QC_Hit表示本次查询是否命中了查询缓存(Query Cache)。如果显示的是0,则表示该查询并没有真正的执行。
如果Full_scan的结果为Yes表示该查询比较糟糕,因为需要扫描全表。
Full_join表示联合查询时没有使用索引。
如果需要创建临时表,则Tmp_table的结果为Yes;如果需要创建基于磁盘的临时表而不是基于内存的,则Disk_tmp_table的值为Yes。
如果用到filesort算法,则Filesort的值为 Yes,Filesort_on_disk则表示排序是基于临时文件进行的。


InnoDB 的使用
最后一部分是InnoDB使用结果的统计。MySQL现在允许运行SHOW SESSION STATUS来查看每个线程的统计信息,但是这并不包括InnoDB的使用,因为InnoDB部分而总是显示全局统计的结果。该补丁允许你查看每次查询的InnoDB资源使用情况。

#   InnoDB_IO_r_ops: 3  InnoDB_IO_r_bytes: 49152  InnoDB_IO_r_wait: 0.018690
#   InnoDB_rec_lock_wait: 0.000000  InnoDB_queue_wait: 0.000000
#   InnoDB_pages_distinct: 7InnoDB_IO_r_ops统计计划需要读取的页数。实际数量可能不太一样,虽然它可以异步完成,不幸的是并没有好办法来衡量它。它的单位是字节(bytes)。
从InnoDB_IO_r_wait中可以看到 InnoDB 从存储引擎中读取数据锁等待的时间(单位是秒)。
InnoDB_rec_lock_wait表示等待行锁所需时间(单位是秒)。
InnoDB_queue_wait表示等待进入 InnoDB 队列或在队列中等待执行所消耗的时间(单位是秒)。
InnoDB_pages_distinct显示了读取的独立页个数。这只是基于用小哈希数组表示的整个缓冲池的近似值,因为有可能需要用很大的内存来映射所有页。同一个查询却产生不准确的读取页数量增长可能是发生了哈希冲撞的缘故。
如果查询中没有用到InnoDB,则相关日志行变成下面这样,其他的不变:

# No InnoDB statistics available for this query注意:尽管该补丁已经做过压力测试,并且还在实际环境中使用过,但仍然建议不要在非常重要的系统中使用,万一出了问题,人家可不负责啊 :)

TAG: mysql MySQL Mysql 查询 微秒

[ 本帖最后由 tznktg 于 2008-11-5 10:25 编辑 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖
台州维博网络(www.tzweb.com)专门运用PHP+MYSQL/ASP.NET+MSSQL技术开发网站门户平台系统等。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

网站推广
关于我们
  • 台州朗动科技(Tzweb.com)拥有多年开发网站平台系统门户手机客户端等业务的成功经验。主要从事:政企网站,系统平台,微信公众号,各类小程序,手机APP客户端,浙里办微应用,浙政钉微应用、主机域名、虚拟空间、后期维护等服务,满足不同企业公司的需求,是台州地区领先的网络技术服务商!

Hi,扫描关注我

Copyright © 2005-2026 站长论坛 All rights reserved

Powered by 站长论坛 with TZWEB Update Techonolgy Support

快速回复 返回顶部 返回列表