浅谈mysql开启慢查询日志方法

开启慢查询日志:可以让MySQL记录下查询超过指定时间的语句,通过定位分析性能的瓶颈,才能更好的优化数据库系统的性能。不过要注意,一旦开启慢日志查询会增加数据库的压力,建议一周定时清除下慢查询日志
设置慢查询日志有两种:

一、全局变量设置(数据库重启全部失效,得重新配置)

1.登录mysql数据库

浅谈mysql开启慢查询日志方法_第1张图片
2.查看数据库是否有开启慢查询并查看慢查询默认设置值

show variables like ‘slow_query%’;
show variables like ‘long_query_time’;

浅谈mysql开启慢查询日志方法_第2张图片

slow_query_log | OFF 表示慢查询未开启
long_query_time | 10.000000 表示慢查询默认值是10

3.开启慢查询,将 slow_query_log 全局变量设置为“ON”状态

set global slow_query_log=‘ON’;

在这里插入图片描述

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

set global slow_query_log_file=’/var/lib/mysql/test-slow.log’;

在这里插入图片描述

5.设置查询超过0.005秒就记录(这里是方便测试,查看结果,实际上你可以定义1秒)

set global long_query_time=0.005;

在这里插入图片描述
二、配置文件设置(数据库重启不影响)

1.编辑配置文件/etc/my.cnf加入如下内容

slow_query_log = ON
slow_query_log_file = /var/lib/mysql/test-slow.log
long_query_time = 0.005

浅谈mysql开启慢查询日志方法_第3张图片

2.重启MySQL服务

service mysqld restart

3.重新进入登录mysql,查看

浅谈mysql开启慢查询日志方法_第4张图片
三、进行测试

1.执行一条慢查询SQL语句(或者调用一下项目下接口api)

mysql> select sleep(2);

2.查看是否生成慢查询日志

浅谈mysql开启慢查询日志方法_第5张图片


以上完成的操作如有不正确的地方还望诸位多多指教

你可能感兴趣的:(MySql)