MySQL慢查询及开启慢查询
2024-10-19 11:08:37
一、简介
开启慢查询日志,可以让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
最新文章
- 如何升级PowerShell
- [LeetCode] Maximal Square 最大正方形
- HTML5 canvas画布写炫彩动态的倒计时效果
- iOS 开发技巧收藏贴 链接整理
- 如何在前台脚本通过json传递数据到后台(使用微软自带的ajax)
- 在线PDF编辑网站http://www.pdfescape.com
- CSS 属性 :before &;&; :after的用法,伪类和伪元素的区别
- (转帖) 有限狀態機FSM coding style整理 (SOC) (Verilog)
- 用不动点组合子解递归(python实现)
- HDU 4005 The war (图论-tarjan)
- 【算法系列学习】SPFA邻接表最短路 [kuangbin带你飞]专题四 最短路练习 F - Wormholes
- Thinkphp框架下连接两个及以上的数据库方法
- Redis源码 - 事件管理
- timestamp 与 nonce 防止重放攻击
- Navicat for Oracle 绿色版 连接 Oracle 12c
- 使用NewLife网络库构建可靠的自动售货机Socket服务端(一)
- python--模块--10
- go指针的一个小坑
- 图解Sysprep封装系统
- 关于setTimeout()你所不知道的地方
热门文章
- Mysql/Oracle/达梦中数据字典表
- {";errcode";:40017,";errmsg";:";invalid button type hint: [I8nq_a0783sha1]";}
- shell中的特殊变量IFS
- C语言:Unicode字符集
- ES6新增语法(五)——Promise详解
- Kubernetes全栈架构师(基本概念)--学习笔记
- c#链接MySql数据库方法
- Windows配置深度学习环境详细教程(一):安装Pycharm和Miniconda、conda环境介绍
- 【贪心+排序】排队接水 luogu-1223
- 关于hashcode和equals方法说明