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. iOS:下拉刷新控件UIRefreshControl的详解

    下拉刷新控件:UIRefreshControl 1.具体类信息: @interface UIRefreshControl : UIControl //继承控制类 - (instancetype)ini ...

  2. GLSL 在OpenGL中向shader传递信息【转】

    http://blog.csdn.net/hgl868/article/details/7872219 引言 一个OpenGL程序可以用多种方式和shader通信.注意这种通信是单向的,因为shade ...

  3. PyDev:warning: Debugger speedups using cython not foun

    在eclipse下调试代码开始时总提示一个警告: warning: Debugger speedups using cython not found. Run '"C:\Python36\p ...

  4. 谷歌浏览器开发调试工具中Sources面板 js调试等 完全介绍

    这次分享的是Chrome开发工具中最有用的面板Sources. Sources面板几乎是我最常用到的Chrome功能面板,也是在我看来决解一般问题的主要功能面板.通常只要是开发遇到了js报错或者其他代 ...

  5. laravel5.1安装

    Laravel 于6月9日正式发布了 5.1 最新 LTS 版本.这是 Laravel 历史上第一个提供 LTS(长期支持 - long-time support) 支持的版本. 首先使用Larave ...

  6. [Algorithm] Construct a Binary Tree and Binary Search

    function createNode(value) { return { value, left: null, right: null }; } function BinaryTree(val) { ...

  7. Linux 内存泄露小结

    本文仅限记录自己的一次 内存泄露追踪小记. 可能并不十分适用与大家的情况.而且方法也并不是很smart.仅做记录,能提供个思路更好.        一. 要问调试程序遇到什么问题最头疼, 内存泄露肯定 ...

  8. Java网络编程-HTTP协议

    HTTP协议的定义 这篇文章暂时不研究HTTP底层的TCP/IP的握手和挥手过程,只从表面的交互流程分析HTTP协议. HTTP英文全称是Hypertext Transfer Protpcol,也就是 ...

  9. linux系统中的DNS服务器介绍

    http://lq2419.blog.51cto.com/1365130/1172269 DNS:Domain Name Service,linux上的DNS服务是基于一种软件BIND实现的.BIND ...

  10. Python 正则表达式学习摘要及资料

    来源:Michael_翔_ 摘要 在正则表达式中,如果直接给出字符,就是精确匹配. {m,n}? 对于前一个字符重复 m 到 n 次,并且取尽可能少的情况 在字符串'aaaaaa'中,a{2,4} 会 ...