MySql Trace

MySql Trace

2015-09-25

目录

1 版本简要
2 在线设置
  2.1 打开命令列界面
  2.2 设置参数
3 查看结果

在MsSQL Server中我们要追踪SQL,只需要开启MS SQL中的事件追踪器(Server Profiler)就可以了,而且设置非常的方便。

在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语句

原文地址:https://www.cnblogs.com/Ming8006/p/4838106.html