MySQL性能优化--慢查询日志的使用

一、修改慢查询时间

数据库默认的long_query_time是10秒
但是,响应时间是毫秒级别的(应用服务器时间+网络时间+数据库时间)
所以,long_query_time应当设为1s

1、查看数据库默认的long_query_time

show variables like ‘long_query_time’

在这里插入图片描述

2、修改配置文件

long_query_time=1

在这里插入图片描述

3、在服务中重启mysql

在这里插入图片描述
在这里插入图片描述

4、再次查看long_query_time

show variables like ‘long_query_time’

在这里插入图片描述
会发现,此时慢查询时间已经由10秒变为1秒。

二、打开慢查询日志

1、查看默认设置,慢查询日志处于关闭状态

show variables like%slow%

在这里插入图片描述

2、修改配置文件

slow-query-log=1
slow_query_log_file="SD-20190801TIWK-slow.log"
log_queries_not_using_indexes=1

在这里插入图片描述

3、再次查看慢查询日志开启状态

show variables like%slow%

在这里插入图片描述
发现慢查询日志已经开启。

三、实验-查看慢查询日志:

1、三条用于测试的sql语句

select * from student;
select * from student where name like '%学生';
select * from student where id=1;

2、explain 查看sql语句类型等信息

explain select * from student;

在这里插入图片描述

explain select * from student where name like '%学生';

在这里插入图片描述

explain select * from student where id=1;

在这里插入图片描述

3、结论分析

在这里插入图片描述
会发现,只要是type类型为ALL的,都会进入慢查询日志,而select * from student where id=1;类型为const,则没有出现在慢查询日志中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值