慢查询日志查询
作为运维人员,磁盘空间也是监控中重要的一个环节,数据库服务器磁盘空间不足告警,有时候不是因为业务数据量大,而是因为开启了慢查询,如果my.cnf文件中log-queries-not-using-indexes = 1,那么慢查询记录的日志中就不完全是慢查询日志,它包含了查询中没有引用索引的语句,久而久之慢查询日志文件会越来越大,如下为清理慢查询日志,以及关闭未走索引查询记录slow log。
安全清空在线慢查询日志slowlog的流程
查看慢查询日志状态
mysql> show variables like '%slow%';
关闭慢查询日志
mysql> set global slow_query_log=0;
mysql> show variables like '%slow%';
指定新的慢查询日志文件路径
mysql> set global slow_query_log_file='/data/mysqldata3307/log/slow-query20210531.log';
开启慢查询日志
mysql> set global slow_query_log=1;
mysql> show variables like '%slow%';
在新的慢查询日志文件中,检查慢查询语句
mysql> select sleep(5) as a, 1 as b;
more /data/mysqldata3307/log/slow-query20210531.log
备份原有慢查询日志到新的目录
mv /data/mysqldata3307/log/slow-query20210531.log /bakup/old-slow.log.bak
关闭未走索引查询语句记录slow log
set global log_queries_not_using_indexes = 'off';