本站首页    管理页面    写新日志    退出


«November 2025»
1
2345678
9101112131415
16171819202122
23242526272829
30


公告
 本博客在此声明所有文章均为转摘,只做资料收集使用。

我的分类(专题)

日志更新

最新评论

留言板

链接

Blog信息
blog名称:
日志总数:1304
评论数量:2242
留言数量:5
访问次数:7647197
建立时间:2006年5月29日




[MySQL]MySQL SQL Profiler性能分析器
软件技术

lhwork 发表于 2006/12/22 9:27:49

看到很多朋友问MySQL的性能分析器 因为MySQL在这方面做得比较差,也可能我不知道 没有Microsoft的SQL Profiler,也没有Oracle的Audit和AWR 所以我们很难得到一些SQL语句的统计,这也给我们调优带来了困难 更难的是对MySQL的追踪 以前写过个,不过在看过mysql网站上的一个bash脚本后,觉得自己的那个就是小巫见大巫了 现拿来分享给大家,很简单 # 取得网卡eth0上的所有操作 time tcpdump -i eth0 -s 1500 -w 20060427-db-traffic-01.dmp  # 这个可以指定特定IP请求的操作,可用于追踪 time tcpdump -i eth0 -s 1500 src host 192.168.2.10 -w 20060427-db-traffic-01.dmp  # 这个是格式化输出你要结果 strings 20060427-db-traffic-01.dmp | grep -i 'select' | awk '{printf("%s %s %s %s\n", $1,$2,$3, $4);}'| sort| uniq -c | awk '{printf("%06ld %s %s %s %s\n", $1,$2,$3,$4,$5);}'|sort 得到的结果: cpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 1500 bytes 12000 packets captured 12000 packets received by filter 0 packets dropped by kernel real 0m8.666s user 0m0.006s sys 0m0.016s -------- 000001 select last_insert_id() from system_parameter ... 000122 select count(1) from visit_tracking 000122 select visitor_id 000800 select web_page_id , web_page_type_id 000800 select web_page_type_id , name 003200 select count(1) from hit_count 006400 select pd.parameter_value, 006400 select rp.user_id , rp.update_time  可以看到执行各种select的次数,当然改一下就可以看insert,update这种操作次数 配合log-slow-queries,你可以进一步的优化


阅读全文(1737) | 回复(0) | 编辑 | 精华
 



发表评论:
昵称:
密码:
主页:
标题:
验证码:  (不区分大小写,请仔细填写,输错需重写评论内容!)



站点首页 | 联系我们 | 博客注册 | 博客登陆

Sponsored By W3CHINA
W3CHINA Blog 0.8 Processed in 0.639 second(s), page refreshed 144800683 times.
《全国人大常委会关于维护互联网安全的决定》  《计算机信息网络国际联网安全保护管理办法》
苏ICP备05006046号