MySQL——开启慢查询

前言

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

参数说明

slow_query_log 慢查询开启状态
slow_query_log_file 慢查询日志存放的位置(这个目录需要MySQL的运行帐号的可写权限,一般设置为MySQL的数据存放目录)
long_query_time 查询超过多少秒才记录

设置步骤

查看慢查询相关参数

MySQL [(none)]> show variables like 'slow_query%';
+---------------------+----------------------------+
| Variable_name       | Value                      |
+---------------------+----------------------------+
| slow_query_log      | ON                         |
| slow_query_log_file | /data/mysql/mysql-slow.log |
+---------------------+----------------------------+
2 rows in set (0.00 sec)

MySQL [(none)]> show variables like 'long_query_time';
+-----------------+----------+
| Variable_name   | Value    |
+-----------------+----------+
| long_query_time | 1.000000 |
+-----------------+----------+
1 row in set (0.01 sec)

开启慢查询

方法一:全局变量设置
将 slow_query_log 全局变量设置为“ON”状态

mysql> set global slow_query_log='1'; 

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

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

设置超时时间

# 查询超过1秒的SQL就进行记录
mysql> set global long_query_time=1;

查看设置后的参数

MySQL [(none)]> show variables like 'slow_query%';
+---------------------+----------------------------+
| Variable_name       | Value                      |
+---------------------+----------------------------+
| slow_query_log      | ON                         |
| slow_query_log_file | /data/mysql/mysql-slow.log |
+---------------------+----------------------------+
2 rows in set (0.00 sec)

MySQL [(none)]> show variables like 'long_query_time';
+-----------------+----------+
| Variable_name   | Value    |
+-----------------+----------+
| long_query_time | 1.000000 |
+-----------------+----------+
1 row in set (0.01 sec)

测试

执行慢查询SQL

mysql> select sleep(2);

查看是否生成日志

tail -f /data/mysql/mysql-slow.log 

如果日志存在,MySQL开启慢查询设置成功!

原文地址:https://www.cnblogs.com/wangyang0210/p/12255181.html

时间: 2024-08-07 18:40:03

MySQL——开启慢查询的相关文章

MYSQL开启慢查询日志实施

查看当前服务器是否开启慢查询: 1.快速办法,运行sql语句show VARIABLES like "%slow%" 2.直接去my.conf中查看. my.conf中的配置(放在[mysqld]下的下方加入) [mysqld] log-slow-queries = /usr/local/mysql/var/slowquery.loglong_query_time = 1  #单位是秒log-queries-not-using-indexes 使用sql语句来修改:不能按照my.con

MySql开启慢查询

分析MySQL语句查询性能的方法除了使用 EXPLAIN 输出执行计划,还可以让MySQL记录下查询超过指定时间的语句,我们将超过指定时间的SQL语句查询称为“慢查询”. 查看/设置“慢查询”的时间定义 1 mysql> show variables like "long%"; 2 +-----------------+----------+ 3 | Variable_name | Value | 4 +-----------------+----------+ 5 | long

mysql开启慢查询方法

1,配置开启 Linux: 在mysql配置文件my.cnf中增加 log-slow-queries=/var/lib/mysql/slowquery.log (指定日志文件存放位置,可以为空,系统会给一个缺省的文件host_name-slow.log)long_query_time=2 (记录超过的时间,默认为10s)log-queries-not-using-indexes (log下来没有使用索引的query,可以根据情况决定是否开启)log-long-format (如果设置了,所有没有

mysql开启慢查询日志

所谓慢查询即一条sql语句的查询时间超过了预定义好的规定查询时间,这些语句是要记录下来做语句优化使用的,下面是如何记录慢查询语句的方法: 1.先查看是否开启慢查询日志功能: mysql> show global variables  like 'slow_query_log'; +----------------+-------+ | Variable_name  | Value | +----------------+-------+ | slow_query_log | OFF   | +-

linux下mysql开启慢查询

mysql中最影响速度的就是那些查询很慢的语句.这些慢的语句,可能是写的不够合理或者是大数据下多表的联合查询等等.所以我们要找出这些语句,分析原因,加以优化. 1.方法1:用命令开启慢查询 1).查看默认慢查询的时间: mysql> show variables like "%long%"; +--------------------+-----------+ | Variable_name | Value | +--------------------+-----------+

MySQL 开启慢查询日志

1.1 简介 开启慢查询日志,可以让MySQL记录下查询超过指定时间的语句,通过定位分析性能的瓶颈,才能更好的优化数据库系统的性能. 1.2 登录数据库查看 [[email protected] lib]# mysql –uroot 因为没有设置设置密码,有密码的在 mysql –uroot –p 接密码 1.2.1 进入MySql 查询是否开了慢查询 mysql> show variables like 'slow_query%'; +---------------------+-------

操作3 mongodb和mysql 开启慢查询日志 ,以及mongodb从配置文件启动

1. mongodb从配置文件启动 创建配置文件:/usr/local/mongodb/etc/mongodb.conf 配置文件的内容为: #Directory and relavent set dbpath = /var/mongodb/data logpath = /var/mongodb/logs/log.log profile=2 slowms=100 #repairpath = /var/mongodb/repair pidfilepath = /usr/local/mongodb/

mysql开启慢查询日志及验证过程

mysql慢查询 1.慢查询作用? 它能记录下所有执行超过long_query_time时间的sql语句,帮你找到执行慢的sql,方便我们对这些sql语句进行优化. 2.如何开启慢查询? 首先我们先查看mysql服务器的慢查询状态是否开启. 执行如下指令: 我们可以看到log_slow_queries状态为ON,说明当前已经开启慢查询.如果没有开启,进行如下操作: 方法一:找到mysql的配置文件my.cnf(/etc/my.cnf),在mysqld下方加入慢查询的配置语句(注意一定要在[mys

MySQL 开启慢查询日志与普通日志

一.开启满查询日志 1.查看慢查询日志 SHOW VARIABLES LIKE '%slow%'; 2.开启慢查询日志 set GLOBAL slow_query_log =on; 3.设置慢查询日志保存文件与路径 set GLOBAL slow_query_log_file='/tmp/mysql_slow.log'; 4.设定慢查询日志时间 set GLOBAL long_query_time=1; 二.开启普通日志 1.查看普通日志 SHOW VARIABLES LIKE 'general