MySql教程

性能测试之Mysql慢查询

本文主要是介绍性能测试之Mysql慢查询,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1.开启慢查询的目的

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

2.设置mysql慢查询

方法一: 全局变量设置(临时生效)
将 slow_query_log 全局变量设置为“ON”状态

mysql> set global slow_query_log='ON'; 

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

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

查询超过1秒就记录

mysql> set global long_query_time=1;

方法二: 配置文件设置(永久生效)
修改配置文件my.cnf,在[mysqld]下方加入:

[mysqld]
slow_query_log = ON
slow_query_log_file = /usr/local/mysql/data/slow.log
long_query_time = 1
重启MySQL服务

systemctl restart mysqld

3.查看mysql慢查询状态

show variables like ‘%slow%’; #查看慢查询的开启状态和慢查询日志的存储路径
show variables like ‘%log_output%’; #查看当前慢查询日志输出的格式,可以是FILE(存储在数数据库的数据文件中的hostname.log),也可以是TABLE(存储在数据库中的mysql.general_log)
show variables like ‘long%’; #查看慢查询阈值,当查询时间多于设定的阈值时,记录日志
show global status like ‘%Slow_queries%’; #查看慢查询的个数,根据个数是否新增来判断测试结果
select sleep(2); #插入一条数据,数据大于“long_query_time”(1秒)时(不包含1秒),会把日志保存到慢查询日志中

测试

select sleep(3);

查看日志

cat /var/log/slow_query.log

在这里插入图片描述

4.mysql慢查询日志分析工具

mysqldumpslow
这篇关于性能测试之Mysql慢查询的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!