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

MySql Trace的更多相关文章

  1. debian C++ OTL库 用 unixodbc 连接 mysql 小记

    这个东东也是折腾了几天,网上很多文章可能已经过时,所以写下不同,以备后用. 参考网址: http://blog.csdn.net/genganpeng/article/details/7402229 ...

  2. MySQL Execution Plan--执行计划中的Type列

    在一次的优化过程中,由于没有关注执行计划中type列,仅看key列来查看"使用到的索引",导致优化过程走了不少弯路. 以下面SQL为例: SELECT wave_no, SUM(I ...

  3. MySQL--Profiling和Trace使用

    使用MySQL Profiling ##=====================================## ## 查看PROFILING是否开启 SELECT @@profiling ## ...

  4. 【原创】MySQL Replay线上流量压测工具

    一. 背景 去年做过一次mysql trace 重放的测试,由于performance schema本身采集样本的长度等限制,实际回放的成功率比较低. 最近找到一款开源的工具,基于TCPCopy实现了 ...

  5. MySQL之mysql命令使用详解

    MySQL Name mysql - the MySQL command-line tool Synopsis mysql [options] db_name Description mysql is ...

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

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

  7. [转]细说MySQL Explain和Optimizer Trace简介

    在开发过程中,对每个上线的SQL查询指纹(query figerprint)的质量都应有估算:而估算DB查询质量最直接的方法,就是分析其查询执行计划( Query Execution Plan ,即Q ...

  8. [MySQL 5.6] 初识5.6的optimizer trace

      在MySQL5.6中,支持将执行的SQL的查询计划树记录下来,目前来看,即使对于非常简单的查询,也会打印出冗长的查询计划,看起来似乎不是很可读,不过对于一个经验丰富,对查询计划的生成过程比较了解的 ...

  9. 【MySQL】使用 Optimizer Trace 观察SQL执行过程

    Optimizer Trace 是MySQL 5.6.3里新加的一个特性,可以把MySQL Optimizer的决策和执行过程输出成文本.输出使用JSON格式,便于程序分析和人类阅读. 使用方法 1) ...

随机推荐

  1. Delphi DBGrid图显用法

    procedure TForm10.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;DataCol: Integer; Column: ...

  2. 设计模式实例(Lua)笔记之四(Builder 模式)

    1.描写叙述:      又是一个周三,快要下班了,老大突然又拉住我,喜滋滋的告诉我"牛叉公司非常惬意我们做的模型,又签订了一个合同,把奔驰.宝马的车辆模型都交给我我们公司制作了,只是这次又 ...

  3. Thinkphp学习笔记7-输入变量

    在Web开发过程中,我们经常需要获取系统变量或者用户提交的数据,这些变量数据错综复杂,而且一不小心就容易引起安全隐患,但是如果利用好ThinkPHP提供的变量获取功能,就可以轻松的获取和驾驭变量了. ...

  4. android学习的网站收集

    1. http://mob.com/#/index 提供分享等统一解决方案 2. http://bbs.apkbus.com/explore/ 这个类似的quroa问答模块,覆盖不错.就是人气,稍差. ...

  5. Android 中的长度单位具体解释

    一.介绍一下 dp 和 sp. dp 也就是 dip.这个和 sp 基本类似.假设设置表示长度.高度等属性时能够使用 dp 或 sp.但假设设置字体,须要使用 sp. dp 是与密度无关,sp除了与密 ...

  6. Java内存溢出的详细解决方案(转http://developer.51cto.com/art/200906/129346.htm)

    一.内存溢出类型 1.java.lang.OutOfMemoryError: PermGen space JVM管理两种类型的内存,堆和非堆.堆是给开发人员用的上面说的就是,是在JVM启动时创建:非堆 ...

  7. SELECT语句逻辑运行顺序,你知道吗?

    引言 这不是一个什么多深的技术问题.多么牛叉的编程能力.这跟一个人的开发能力也没有很必定的直接关系,可是知道这些会对你的SQL编写,排忧及优化上会有很大的帮助.它不是一个复杂的知识点.可是一个很基础的 ...

  8. ExecutorService的execute和submit方法

    三个区别: 1.接收的参数不一样 2.submit有返回值,而execute没有 Method submit extends base method Executor.execute by creat ...

  9. HDU 1565 1569 方格取数(最大点权独立集)

    HDU 1565 1569 方格取数(最大点权独立集) 题目链接 题意:中文题 思路:最大点权独立集 = 总权值 - 最小割 = 总权值 - 最大流 那么原图周围不能连边,那么就能够分成黑白棋盘.源点 ...

  10. vim中翻页的命令

      整页翻页 ctrl-f ctrl-b f就是forword b就是backward 翻半页 ctrl-d ctlr-u d=down u=up 滚一行 ctrl-e ctrl-y zz 让光标所杂 ...