一、简介

开启慢查询日志,可以让MySQL记录下查询超过指定时间的语句,通过定位分析性能的瓶颈,才能更好的优化数据库系统的性能。

二、参数说明

slow_query_log 慢查询开启状态

slow_query_log_file 慢查询日志存放的位置(这个目录需要MySQL的运行帐号的可写权限,一般设置为MySQL的数据存放目录)

long_query_time 查询超过多少秒才记录

三、设置步骤

1.查看慢查询相关参数

mysql> show variables like 'slow_query%';
+---------------------------+----------------------------------+
| Variable_name | Value |
+---------------------------+----------------------------------+
| slow_query_log | OFF |
| slow_query_log_file | /data/mysql/log/mysql-slow.log |
+---------------------------+----------------------------------+ mysql> show variables like 'long_query_time';
+-----------------+-----------+
| Variable_name | Value |
+-----------------+-----------+
| long_query_time | 10.000000 |
+-----------------+-----------+

2.设置方法

方法一:全局变量设置

将 slow_query_log 全局变量设置为“ON”状态

mysql> set global slow_query_log='ON';

设置慢查询日志存放的位置

mysql> set global slow_query_log_file='/data/mysql/log/mysql-slow.log';

查询超过2秒就记录

mysql> set global long_query_time=2;

方法二:配置文件设置

修改配置文件my.cnf,在[mysqld]下的下方加入

[mysqld]
slow_query_log = ON
slow_query_log_file = /data/mysql/log/mysql-slow.log
long_query_time = 2

3.重启MySQL服务

service mysqld restart

4.查看设置后的参数

mysql> show variables like 'slow_query%';
+---------------------+--------------------------------+
| Variable_name | Value |
+---------------------+--------------------------------+
| slow_query_log | ON |
| slow_query_log_file | /data/mysql/log/mysql-slow.log |
+---------------------+--------------------------------+ mysql> show variables like 'long_query_time';
+-----------------+----------+
| Variable_name | Value |
+-----------------+----------+
| long_query_time | 1.000000 |
+-----------------+----------+

四、测试

1.执行一条慢查询SQL语句

mysql> select sleep(3);

2.查看是否生成慢查询日志

ll /data/mysql/log

最新文章

  1. 如何升级PowerShell
  2. [LeetCode] Maximal Square 最大正方形
  3. HTML5 canvas画布写炫彩动态的倒计时效果
  4. iOS 开发技巧收藏贴 链接整理
  5. 如何在前台脚本通过json传递数据到后台(使用微软自带的ajax)
  6. 在线PDF编辑网站http://www.pdfescape.com
  7. CSS 属性 :before && :after的用法,伪类和伪元素的区别
  8. (转帖) 有限狀態機FSM coding style整理 (SOC) (Verilog)
  9. 用不动点组合子解递归(python实现)
  10. HDU 4005 The war (图论-tarjan)
  11. 【算法系列学习】SPFA邻接表最短路 [kuangbin带你飞]专题四 最短路练习 F - Wormholes
  12. Thinkphp框架下连接两个及以上的数据库方法
  13. Redis源码 - 事件管理
  14. timestamp 与 nonce 防止重放攻击
  15. Navicat for Oracle 绿色版 连接 Oracle 12c
  16. 使用NewLife网络库构建可靠的自动售货机Socket服务端(一)
  17. python--模块--10
  18. go指针的一个小坑
  19. 图解Sysprep封装系统
  20. 关于setTimeout()你所不知道的地方

热门文章

  1. Mysql/Oracle/达梦中数据字典表
  2. {"errcode":40017,"errmsg":"invalid button type hint: [I8nq_a0783sha1]"}
  3. shell中的特殊变量IFS
  4. C语言:Unicode字符集
  5. ES6新增语法(五)——Promise详解
  6. Kubernetes全栈架构师(基本概念)--学习笔记
  7. c#链接MySql数据库方法
  8. Windows配置深度学习环境详细教程(一):安装Pycharm和Miniconda、conda环境介绍
  9. 【贪心+排序】排队接水 luogu-1223
  10. 关于hashcode和equals方法说明