MySQL如何清空慢查询文件

Anne ·
更新时间:2024-09-20
· 963 次阅读

一、概述

本章主要写当慢查询文件很大的时候怎样在线生成一个新的慢查询文件。

测试环境:mysql 5.6.21

二、步骤

配置慢查询

默认的my.cnf文件在/etc/目录下

vim /etc/my.cnf

#slow_query slow_query_log=1#开启慢查询 slow_query_log_file=/var/lib/mysql/mysql-slow.log #设置慢查询路径 long_query_time=0.01#设置慢查询时间

配置完要重启mysql服务才生效

查询慢查询配置是否成功

测试慢查询

use information_schema; select * from tables;

语句执行时间花了:1.1秒,返回了314行记录;

查看慢查询文件:cat mysql-slow.log

慢查询日志文件中记录了每一天慢查询记录,每一条记录都是以Time:开头;记录了包含登入信息,查询所花的时间,锁花的时间,返回的行数,扫描的记录数,执行的语句。

在线生成慢查询日志文件

1.关闭全局慢查询

代码如下:SET global slow_query_log=0

查询是否关闭全局慢查询

代码如下:SHOW VARIABLES LIKE '%query_log%';

设置一个新的慢查询文件

代码如下:SET global slow_query_log_file='/var/lib/mysql/mysql-slow_new.log'

开启慢查询

代码如下:SET global slow_query_log=1;

代码如下:SHOW VARIABLES LIKE '%query_log%';

在慢查询路径中可以看到生成了一个新的慢查询文件。

后面的慢查询信息会记录到新的日志文件当中,

这时我们可以mv以前的慢查询文件进行归档了。

重启mysql服务

service mysql restart

代码如下:SHOW VARIABLES LIKE '%query_log%';

当重启mysql服务之后,慢日志文件会重新变成之前的在my.cnf里面设置的文件,所以如果你想要重启服务之后慢日志文件还是刚才设置的mysql-slow_new.log的话你就需要在修改全局设置的同时再修改my.cnf文件,这样就能保证重启之后文件还是之前修改的文件。

总结

配置慢查询对平时收集性能差的语句很有帮助,也有很多工具专门来分析慢查询日志的,其中percona-toolkit就是一个很不错的分析慢查询的工具,如果没有使用可以去了解一下。

您可能感兴趣的文章:详解mysql数据库如何开启慢查询日志MySQL慢查询之开启慢查询MySQL启用慢查询日志记录方法mysqldumpslow用法示例(慢查询)一次MySQL慢查询导致的故障mysql5.7.10开启慢查询详解Mysql慢查询操作梳理总结



慢查询 Mysql

需要 登录 后方可回复, 如果你还没有账号请 注册新账号