参考文档:

http://www.linuxidc.com/Linux/2012-09/70459.htm

1.记录慢查询SQL

#配置开启
(linux)修改my.cnf:
log-slow-queries=/var/log/mysql/slowquery.log (指定日志文件存放位置,可以为空,系统会给一个缺省的文件host_name-slow.log)
long_query_time= (记录超过的时间,默认为10s)
log-queries-not-using-indexes (log下来没有使用索引的query,可以根据情况决定是否开启)
log-long-format (如果设置了,所有没有使用索引的查询也将被记录)
(windows)修改my.ini:
log-slow-queries=D:\mysql\log\mysqlslowquery.log
long_query_time=
... (其他参数如上) #查看方式
使用mysql自带命令mysqldumpslow查看,常用命令:
-s ORDER what to sort by (t, at, l, al, r, aretc), 'at’ is default
-t NUM just show the top n queries
-g PATTERN grep: only consider stmts that includethis string
eg:
s,是order的顺序,说明写的不够详细,俺用下来,包括看了代码,主要有 c,t,l,r和ac,at,al,ar,分别是按照query次数,时间,lock的时间和返回的记录数来排序,前面加了a的时倒序 -t,是top n的意思,即为返回前面多少条的数据 -g,后边可以写一个正则匹配模式,大小写不敏感的 mysqldumpslow -s c -t host-slow.log
mysqldumpslow -s r -t host-slow.log 上述命令可以看出访问次数最多的20个sql语句和返回记录集最多的20个sql。
mysqldumpslow -t -s t -g “left join” host-slow.log这个是按照时间返回前10条里面含有左连接的sql语句。

2.explain (sql执行计划解释命令)

EXPAIN [SQL]

3.profile

mysql> select @@profiling;
+-------------+
| @@profiling |
+-------------+
| |
+-------------+
row in set mysql> SET profiling = ;
Query OK, rows affected mysql> select @@profiling;
+-------------+
| @@profiling |
+-------------+
| |
+-------------+
row in set mysql> SELECT * FROM t_im_tokens WHERE profileid IN (SELECT profileid FROM t_enduser_customer_service);
+-----------+----------------------------------+
| profileid | token |
+-----------+----------------------------------+
| | a2898efe07380a813efa53e0fd4b3697 |
| | b37122b662a6a6f7ad0a16e1a03f7f01 |
| | 7235940f4438dbceeaf288540ba68f19 |
| | 7ccb852b19562fc296f82f95f8e0d9ef |
| | a672510b73a34a3d1d6227a53086b248 |
| | 209a5085acbcd3969a98668d62fbd1a3 |
| | 52324116187ce5b558b8a082762b657b |
| | d6b61c83675b373f5b7887c088e6806e |
+-----------+----------------------------------+
rows in set mysql> show profiles;
+----------+------------+-------------------------------------------------------------------------------------------------+
| Query_ID | Duration | Query |
+----------+------------+-------------------------------------------------------------------------------------------------+
| | 0.00018075 | select @@profiling |
| | 0.000613 | SELECT * FROM t_im_tokens WHERE profileid IN (SELECT profileid FROM t_enduser_customer_service) |
+----------+------------+-------------------------------------------------------------------------------------------------+
rows in set mysql> show profile for query ;
+----------------------+----------+
| Status | Duration |
+----------------------+----------+
| starting | 6.3E-5 |
| checking permissions | 5E- |
| checking permissions | 4E- |
| Opening tables | 2E- |
| init | 2.1E-5 |
| System lock | 7E- |
| optimizing | 2E- |
| statistics | 0.000236 |
| preparing | 1.7E-5 |
| executing | 3E- |
| Sending data | 0.000129 |
| end | 5E- |
| removing tmp table | 8E- |
| end | 3E- |
| query end | 5E- |
| closing tables | 8E- |
| freeing items | 3.7E-5 |
| cleaning up | 2.5E-5 |
+----------------------+----------+
rows in set mysql>

mysql性能监控工具的更多相关文章

  1. mysql性能监控工具:mycheckpoint的使用方法

    mycheckpoint 是针对mysql的一个性能监控.指标采集的python写成的工具. 工作原理说明: mycheckpoint是一段脚本,通过将其设置为crontab定时任务,每几分钟采集一次 ...

  2. MySQL性能监控工具-Spotlight on MySQL

    原文地址:http://blog.csdn.net/k_scott/article/details/8167018 这是我的第二款用于监控MySQL数据库性能的工具:Spotlight on MySQ ...

  3. mysql性能监控工具Innotop

    mysql监控管理工具--innotop 1.innotop安装参考官网:http://innotop.googlecode.com/svn/html/installing.html # wget h ...

  4. MySQL性能监控工具-MONyog

      1.登录配置界面 2.show processlist 查看当前使用的进程 3.警告建议你应该优化哪些参数. 4.介绍一下慢查询的配置,其它的可以自己配置,都是简单的英文. 该工具,用着还不错.其 ...

  5. MySQL实时性能监控工具doDBA tools

    doDBA tools是什么? doDBA tools是一个基于控制台的远程监控工具,它不需要在本地/远程系统上安装任何软件,它可以实时收集操作系统.MySQL.InnoDB的实时性能状态数据,并可以 ...

  6. 分布式数据存储 - Zabbix监控MySQL性能

    Zabbix如何监控mysql性能,我们可以使用mysql自带的模板,可以监控如下内容:OPS(增删改查).mysql请求流量带宽,mysql响应流量带宽,最后会附上相应的监控图! 编写check_m ...

  7. MySQL性能、监控与灾难恢复

    原文:MySQL性能.监控与灾难恢复 监控方案:     up.time    http://www.uptimesoftware.com/    收费     Cacti        http:/ ...

  8. 深入理解JVM(七)——性能监控工具

    前言 工欲善其事必先利其器,性能优化和故障排查在我们大都数人眼里是件比较棘手的事情,一是需要具备一定的原理知识作为基础,二是需要掌握排查问题和解决问题的流程.方法.本文就将介绍利用性能监控工具,帮助开 ...

  9. JVM学习--(七)性能监控工具

    前言 工欲善其事必先利其器,性能优化和故障排查在我们大都数人眼里是件比较棘手的事情,一是需要具备一定的原理知识作为基础,二是需要掌握排查问题和解决问题的流程.方法.本文就将介绍利用性能监控工具,帮助开 ...

随机推荐

  1. Kotlin入门第二课:集合操作

    测试项目Github地址: KotlinForJava 前文传送: Kotlin入门第一课:从对比Java开始 初次尝试用Kotlin实现Android项目 1. 介绍 作为Kotlin入门的第二课, ...

  2. Plupload上传插件自定义图片的修改

    若自定义的一个上传图片效果,代码(可能不全),当用户再次点击所有或任意一个上传图片的input时,uploader.files已经多了客户再次上传的图片,但是你就想要最后的两张图片,这就可以使用到up ...

  3. 把ipad作为电脑的第二显示器

    需要:1,iPad          2,ios端需要软件idisplay(在pp助手里搜索idisplay下载即可)       3,windows需要软件iDisplay(链接http://www ...

  4. 前端设计技巧——用 Promise 处理交互和异步

    本文仅表达前端的一些设计技巧,如果您在查阅js技术,请忽略此文! 前端开发经常会遇到这样的场景: 当满足一定条件时,需要弹出一个模态框,以便接收用户的输入.然后根据不同的输入,进行不用的操作. (ps ...

  5. 可视化Git版本管理工具SourceTree的使用

    最近去了新公司,发现公司使用的团队版本管理工具是SourceTree,本人一直是SVN的热衷粉,很少使用git,所以从头学习git及可视化客户端SourceTree的使用,本贴只针对新手,大牛可以无视 ...

  6. 写给Android App开发人员看的Android底层知识(8)

    (十)PMS及App安装过程 PMS,全称PackageManagerService,是用来获取Apk包的信息的. 在前面分析四大组件与AMS通信的时候,我们介绍过,AMS总是会使用PMS加载包的信息 ...

  7. javascript的运行过程以及setTimeout的运行机制

    关于javascript的运行机制大家都应该有所了解了吧,其实javascript是一个单线程的机制,但是因为队列的关系它的表现会让我们感觉是一个多线程的错觉.javascript在运行的时候是这样的 ...

  8. robot framework环境搭建

    来源:http://www.cnblogs.com/puresoul/p/3854963.html[转] 一. robot framework环境搭建: 官网:http://robotframewor ...

  9. xshell连接ubuntu

    安装了 ubuntu-14 ,为了连接 xshell ,做出的一些配置如下: 1.激活root用户 sudo passwd root 设置新密码,设置成功后会有提示 passwd:password u ...

  10. 机器学习:线性判别式分析(LDA)

    1.概述      线性判别式分析(Linear Discriminant Analysis),简称为LDA.也称为Fisher线性判别(Fisher Linear Discriminant,FLD) ...