Mysql慢查询配置
来源:互联网 发布:广州高速公路收费软件 编辑:程序博客网 时间:2024/05/21 06:53
MYSQL慢查询能记录下所有执行超过long_query_time时间的SQL语句, 帮你找到执行慢的SQL, 方便我们对这些SQL进行优化.
如何开启慢查询?
首先我们先查看MYSQL服务器的慢查询状态是否开启.
执行如下命令:
mysql> show variables like 'slow%';
+---------------------+-----------------------------------+
| Variable_name | Value |
+---------------------+-----------------------------------+
| slow_launch_time | 2 |
| slow_query_log | OFF |
| slow_query_log_file | /data/mysql/data/ser6-51-slow.log |
我们可以看到当前log_slow_queries状态为OFF, 说明当前并没有开启慢查询.
需要两个步骤开启:
一:在线修改
#修改slow_query_log
mysql> set global slow_query_log=ON
-> ;
Query OK, 0 rows affected (0.05 sec)
mysql> show variables like 'slow%';
+---------------------+-----------------------------------+
| Variable_name | Value |
+---------------------+-----------------------------------+
| slow_launch_time | 2 |
| slow_query_log | ON |
| slow_query_log_file | /data/mysql/data/ser6-51-slow.log |
+---------------------+-----------------------------------+
3 rows in set (0.00 sec)
#修改long_query_time
默认该参数是10秒:
mysql> show variables like 'long%';
+-----------------+-----------+
| Variable_name | Value |
+-----------------+-----------+
| long_query_time | 10.000000 |
+-----------------+-----------+
1 row in set (0.00 sec)
假如我想记录执行时间超过3秒的sql语句:
mysql> set global long_query_time = 3
-> ;
Query OK, 0 rows affected (0.00 sec)
当前会话看不到long_query_time修改后的变化,需要新打开一个会话,进行查询。
mysql> show variables like 'long%';
+-----------------+----------+
| Variable_name | Value |
+-----------------+----------+
| long_query_time | 3.000000 |
+-----------------+----------+
1 row in set (0.00 sec)
二:修改my.cnf
在线修改的方式在重启数据库服务后会失效,所以还需要修改配置文件:
在[mysqld]下添加:
slow_query_log_file=/data/mysql/data/ser6-51-slow.log
slow_query_log=ON
long_query_time = 3
三:验证是否配置成功
#查看慢查询日志文件是否生成
[root@ser6-51 ~]# ls -l /data/mysql/data/ser6-51-slow.log
-rw-rw---- 1 mysql mysql 570 Jun 26 10:08 /data/mysql/data/ser6-51-slow.log
#查看long_query_time是否生效
mysql> select sleep(4);
+----------+
| sleep(4) |
+----------+
| 0 |
+----------+
1 row in set (4.00 sec)
[root@ser6-51 ~]# vi /data/mysql/data/ser6-51-slow.log
# Time: 150626 10:31:18
# User@Host: root[root] @ localhost [] Id: 26
# Query_time: 4.000214 Lock_time: 0.000000 Rows_sent: 1 Rows_examined: 0
SET timestamp=1435285878;
select sleep(4);
--慢查询日志记录了这个耗时4秒的操作,所以配置成功。
- mysql 慢查询配置
- Mysql慢查询配置
- Mysql慢查询配置
- MySQL慢查询配置
- mysql慢查询配置
- MySQL慢查询配置
- mysql慢查询的配置
- Mysql定位慢查询配置
- MySql的慢查询配置
- 【MySQL】慢查询配置与分析
- mysql配置开启慢查询和查看慢查询的方法
- Linux下mysql配置慢日志查询,把查询慢的sql记录下来
- mysql 慢查询分析
- mysql 慢查询
- mysql 查询慢分析
- mysql慢查询设置
- mysql 慢查询分析
- mysql 开启慢查询
- JAVA 对象数组按照多个属性进行排序
- Openssl 制作CA证书简易方法
- jQuery实现图片延迟加载
- 委比、委差、买一买二买三买四买五
- PS 图像黑白调整算法(彩色图转灰度图)(VC++)
- Mysql慢查询配置
- Ckeditor通过Ajax更新数据
- IOS开发系列--学习资料整理
- Java NIO系列教程(九) ServerSocketChannel
- sparkR介绍及安装
- eclipse ADT
- 【leetcode】Course Schedule II
- 线性同余方程初步应用分析
- Netty学习