mysql慢查询,mysql慢查询日志
================================
©Copyright 蕃薯耀 2020-11-27
http://fanshuyao.iteye.com/
一、配置文件设置慢查询,永久有效,一般不设置,只需要启动慢查询1、2天就行
# 启动慢查询 slow_query_log=1 #不设置的话,默认为创建一个日志文件:C:\ProgramData\MySQL\MySQL Server 5.5\data\host_name-slow.log #slow_query_log_file=不用设置了 #慢查询阈值 long_query_time=2 #日志存储方式。log_output='FILE'表示将日志存入文件,默认值是'FILE'。#log_output='TABLE'表示将日志存入数据库。#table方式可以直接查表(SELECT * FROM mysql.slow_log;) #需要启用慢查询日志,又需要能够获得更高的系统性能,那么建议优先记录到文件。 log_output=FILE
二、设置临时有效,重启失效
SET GLOBAL slow_query_log=1;
使用set global slow_query_log=1开启了慢查询日志只对当前数据库生效,MySQL重启后则会失效。
三、查看慢查询的配置信息
SHOW VARIABLES LIKE '%slow_query_log%';
mysql> SHOW VARIABLES LIKE '%slow_query_log%'; +---------------------+----------------------------------------------------------------------+ | Variable_name | VALUE | +---------------------+----------------------------------------------------------------------+ | slow_query_log | ON | | slow_query_log_file | C:\ProgramData\MySQL\MySQL SERVER 5.5\DATA\xxx-slow.log | +---------------------+----------------------------------------------------------------------+ 2 ROWS IN SET (0.00 sec)
四、查看慢查询日志文件
SHOW VARIABLES LIKE 'slow_query_log_file';
mysql> SHOW VARIABLES LIKE 'slow_query_log_file'; +---------------------+----------------------------------------------------------------------+ | Variable_name | VALUE | +---------------------+----------------------------------------------------------------------+ | slow_query_log_file | C:\ProgramData\MySQL\MySQL SERVER 5.5\DATA\xxx-slow.log | +---------------------+----------------------------------------------------------------------+ 1 ROW IN SET (0.00 sec)
五、设置慢查询阈值,默认是10秒
SET GLOBAL long_query_time = 2;
六、查询慢查询设置的时间
#(需要重新连接或新开一个会话才能看到修改值) SHOW VARIABLES LIKE 'long_query_time'; #或 #(下面为全局的,不需要新创建会话) SHOW GLOBAL VARIABLES LIKE 'long_query_time';
mysql> SHOW VARIABLES LIKE 'long_query_time'; +-----------------+-----------+ | Variable_name | VALUE | +-----------------+-----------+ | long_query_time | 10.000000 | +-----------------+-----------+ 1 ROW IN SET (0.00 sec) mysql> SHOW GLOBAL VARIABLES LIKE 'long_query_time'; +-----------------+-----------+ | Variable_name | VALUE | +-----------------+-----------+ | long_query_time | 10.000000 | +-----------------+-----------+ 1 ROW IN SET (0.00 sec) #修改慢查询时间之后 mysql> SHOW GLOBAL VARIABLES LIKE 'long_query_time'; +-----------------+----------+ | Variable_name | VALUE | +-----------------+----------+ | long_query_time | 2.000000 | +-----------------+----------+ 1 ROW IN SET (0.00 sec)
七、设置日志存储方式,FILE或者TABLE
FILE 文件方式,得找到文件打开
TABLE 方式可以直接查表(SELECT * FROM mysql.slow_log;)
SET GLOBAL log_output = 'TABLE';
查看慢查询输出的方式:FILE或者TABLE(设置输出方式:set global log_output='TABLE';)
SHOW VARIABLES LIKE '%log_output%';
mysql> SHOW VARIABLES LIKE '%log_output%'; +---------------+-------+ | Variable_name | VALUE | +---------------+-------+ | log_output | TABLE | +---------------+-------+ 1 ROW IN SET (0.00 sec)
八、从表中查询慢查询语句
SELECT * FROM mysql.slow_log;
九、执行慢查询语句
SELECT SLEEP(3);
SLEEP(3)为等待3秒
十、查询慢查询的sql语句
SELECT * FROM mysql.slow_log l ORDER BY l.`start_time` DESC;
十一、查看慢查询语句的数量
SHOW GLOBAL STATUS LIKE '%Slow_queries%';
mysql> SHOW GLOBAL STATUS LIKE '%Slow_queries%'; +---------------+-------+ | Variable_name | VALUE | +---------------+-------+ | Slow_queries | 2 | +---------------+-------+ 1 ROW IN SET (0.00 sec)
十二、未使用索引的查询也记录到慢查询
SHOW VARIABLES LIKE 'log_queries_not_using_indexes';
mysql> SHOW VARIABLES LIKE 'log_queries_not_using_indexes'; +-------------------------------+-------+ | Variable_name | VALUE | +-------------------------------+-------+ | log_queries_not_using_indexes | OFF | +-------------------------------+-------+ 1 ROW IN SET (0.00 sec)
开启未使用索引的查询也记录到慢查询
SET GLOBAL log_queries_not_using_indexes=1;
开启了这个参数,其实使用full index scan的SQL也会被记录到慢查询日志。
================================
©Copyright 蕃薯耀 2020-11-27
http://fanshuyao.iteye.com/
相关推荐
Mysql慢查询日志查看 文档有慢查询详细内容介绍和查看方法 我自己收藏的一个文档 共享了希望对大家有所帮助
mysql慢查询日志的使用
MySQL慢查询日志
mysql慢日志查询,介绍查询mysql中哪些是慢查询的内容
mysql 慢查询页面工具 页面化分析慢日志
主要介绍MySQL数据库中慢查询日志的使用流程、使用方式、以及日志分析工具mysqldumpslow的相关内容
Windows下开启MySQL慢查询的方法
Mysql慢查询日志概念常用参数查询与设定查询慢查询记录数mysqldumpslow工具 概念 Mysql的慢查询是一种日志, 主要用于记录 Mysql中响应时间超过设定的阀值的语句. 常用参数 类型 说明 默认值 slow_query_log ...
Slowquery图形化显示MySQL慢日志工具
查看开启状态查看日志文件查看慢查询时间查看日志保存方式查看有多少条慢查询记录修改配置文件配置好后需要重启mysql,试试下面的慢查询:查看慢日志文件:mysql
MySQL 有一种日志,叫做慢查询日志,主要就是用来记录一些耗时的查询操 作。通过这个日志我们就可以分析出哪些的操作是影响性能的,我们需要对其 进行一些优化措施。
mysql慢查询日志对于跟踪有问题的查询非常有用,可以分析出当前程序里有很耗费资源的sql语句,那如何打开mysql的慢查询日志记录呢?其实打开mysql的慢查询日志很简单,只需要在mysql的配置文件里(windows系统是my.ini,...
Anemometer从MySQL的慢查询日志收集信息,并生成报告。
mysql开启查看慢查询日志借鉴.pdf
MySQL中的日志包括:错误日志、二进制日志、通用查询日志、慢查询日志等等。这里主要介绍下比较常用的两个功能:通用查询日志和慢查询日志。 1、通用查询日志:记录建立的客户端连接和执行的语句。 2、慢查询日志:...
mysql慢查询日志文档及命令,操作步骤。用于查询线上mysql sql执行情况,可根据设置过滤sql执行时间大于多少的sql统计情况,工具采用pt-query-degist
内涵 mysqlsla-2.03.tar.tar 包 mysqlsla之linux安装及使用.docx man_mysqlsla.txt
mysql的慢日志配置查询和show processlist使用
MySQL慢查询日志是我们在日常工作中经常会遇到的一个功能,MySQL慢查询日志提供了超过指定时间阈值的查询信息,为性能优化提供了主要的参考依据,是一个非常实用的功能,MySQL慢查询日志的开启和配置非常简单,可以...