MySql Trace
2015-09-25
目录
在MsSQL Server中我们要追踪SQL,只需要开启MS SQL中的事件追踪器()就可以了,而且设置非常的方便。
在MySQL中,也能追踪SQL。但是需要做一些设置,且没有界面,执行的sql保存在log文本中。
1 版本简要
要启用MySQL的Sql Trace,需要启用查询日志功能,各个版本操作不一,下面简要说明:
- 在MySql5.1.12之前,在my.cnf或者my.ini中的[mysqld]节下配置:
log = /path/for/file/live-query.log
- 而在MySql 5.1.12中,你需要在上述配置文件中的[mysqld]中配置:
general_log=1
- MySql 5.1.29中,包括之后版本,你就需要再加上一句:
general_log_file = /path/for/file/live-query.log
2 在线设置
以上参数都是可以在线设置的(也就是说,不用为修改设置而重启MySql)。
2.1 打开命令列界面
mysql数据库管理工具(navicat for mysql) -> 右击服务器 -> 点击 '命令列介面'
图1 打开命令列界面
2.2 设置参数
-- 查看MySQL的版本号select version();-- 查询关于log的设置 (若版本号为 ‘5.1.29’以上版本 like 'general_log%')SHOW VARIABLES LIKE 'general_log%'; -- 开启日志SET GLOBAL general_log ='ON';-- 设置日志的文件路径:本例在Windows下SET GLOBAL general_log_file='D:/MySql/Sql.log';-- 设置结束,执行的sql语句会保存在‘D:/MySql/Sql.log’,可通过notepad++查看
图2 运行结果
3 查看结果
打开保存的log文本,查看执行的sql语句