linux、windows平台下如何监控mysql执行的sql语句

来源:互联网 发布:东京23区 知乎 编辑:程序博客网 时间:2024/05/16 15:54

转自:http://www.fly810.com/2013/06/320799025.html、http://extjs.org.cn/fatjames/archives/325

跟踪监控MYSQL执行的sql语句的方法:

linux平台

监控mysql执行的sql语句
为了做好配合开发做性能和功能测试,方便监控正在执行的sql语句,
可以在/etc/mysqld中添加如下:
log =/usr/local/mysql/var21005/mysql.log
就可以使用:
tail -f mysql.log
来监控了  www.fly810.com  

如果需要监控慢查询可以添加如下内容:
log-slow-queries = /usr/local/mysql/var21005/slowquery.log
long_query_time = 1

windows平台

一windows平台下为例:

 

修改my.ini,在mysqld下添加log一行,

[mysqld]

log = "D:/tmp/mysql_log/mysql_log.sql"

有时我们使用了PHP框架,然后使用现成的ORM,省去了写SQL的麻烦,但又想看看到底生成了哪些SQL;或者下载了wordpress或druapl,想看看人家的SQL是怎么写的,这时如果能够监视MySQL的一举一动就好了,也不难,只需要稍微配置一下,再加上一个工具就行了。

首先,打开%MySQLDir%my.ini(linux下是my.cnf)加上这么一句

# 指定log的位置log=C:/AppServ/MySQL/mysql.log# 或者linux下 log=/var/log/mysql/mysql.log

这样,MySQL就会把所有操作记录都写在mysql.log这个文件里。接下来可以先清空这个文件,然后运行wordpress,再打开这个文件,就会看到所有执行的SQL了,不过这个有点麻烦,如果能实时查看就好了,linux下有tail命令 tail -f /var/log/mysql/mysql.log就行了,windows下没有相应的命令,这时就需要BareTail这个工具了,其实就是模拟tail操作的一个绿色可执行文件。打开后,浏览到之前定义的log文件,然后再运行wordpress,应该能看到BareTail里出现了SQL的操作记录,如下

demo

可以看到wordpress的数据库开销还是挺大的。

BareTail 免费下载地址:
http://www.baremetalsoft.com/baretail/


0 0