博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SQL慢查询测试实践
阅读量:5298 次
发布时间:2019-06-14

本文共 923 字,大约阅读时间需要 3 分钟。

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 = ONslow_query_log_file = /usr/local/mysql/data/slow.loglong_query_time = 1

重启MySQL服务

service mysqld restart

3.查看mysql慢查询状态

show variables like '%slow%';                                  #查看慢查询的开启状态和慢查询日志的存储路径

show variables like '%log_output%';                        #查看当前慢查询日志输出的格式,可以是FILE(存储在数数据库的数据文件中的hostname.log),也可以是TABLE(存储在数据库中的mysql.general_log)

show variables like 'long%';                                      #查看慢查询阈值,当查询时间多于设定的阈值时,记录日志

select sleep(2);                                                          #插入一条数据,数据大于“long_query_time”(1秒)时(不包含1秒),会把日志保存到慢查询日志中

show global status like '%Slow_queries%';               #查看慢查询的个数,根据个数是否新增来判断测试结果

 

转载于:https://www.cnblogs.com/ailiailan/p/9455931.html

你可能感兴趣的文章
jdbc 通过rs.getString()获取数据库中的时间字段问题
查看>>
托管和非托管
查看>>
canvas制作饼图和环形图,使用Excanvas兼容IE67
查看>>
这,才是有本事的男人
查看>>
C语言中定义全局变量
查看>>
linux中使sqlplus能够上下翻页
查看>>
ORACLE创建函数,调用函数
查看>>
PHP + Apche 在 window 系统下的环境搭建
查看>>
MDK5引脚仿真
查看>>
ajax 小练习
查看>>
ajax传值修改数据
查看>>
系统吞吐量、TPS(QPS)、用户并发量、性能测试概念和公式
查看>>
15个nosql数据库
查看>>
source insight3.5 字体
查看>>
Kendo UI开发教程(26): 单页面应用(四) Layout
查看>>
ios7毛玻璃效果实现
查看>>
Oracl数据库管理方面的资料(查询sga,查看oracle数据库名称sid,查看oracle数据库名称,查看表空间,修改表空间名称)...
查看>>
mobx react
查看>>
Windows Phone 7你不知道的8件事
查看>>
Eclipse配置Maven
查看>>