[转]MySQL 清空慢查询文件

概述

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

测试环境: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就是一个很不错的分析慢查询的工具,如果没有使用可以去了解一下。

 本文转自:


备注:

作者:pursuer.chen

博客:http://www.cnblogs.com/chenmh

本站点所有随笔都是原创,欢迎大家转载;但转载时必须注明文章来源,且在文章开头明显处给明链接,否则保留追究责任的权利。

《欢迎交流讨论》

时间: 2024-08-27 12:00:06

[转]MySQL 清空慢查询文件的相关文章

MySQL 清空慢查询文件

原文:MySQL 清空慢查询文件 标签:配置慢查询 概述 本章主要写当慢查询文件很大的时候怎样在线生成一个新的慢查询文件. 测试环境: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清空缓存修改论坛密码

登录Discuz论坛的数据库,执行下面几条MySQL命令: [[email protected] control]# mysql -uroot -panter2017 MySQL [(none)]> show databases; 使用Discuz论坛的数据库 mysql> use discuz; mysql> show tables; 查看Discuz论坛数据库里的表结构 mysql> desc pre_ucenter_members; 查询Discuz论坛的管理员账号登录密码

MySQL导入导出.sql文件及常用命令

MySQL导入导出.sql文件及常用命令 在MySQL Qurey   Brower中直接导入*.sql脚本,是不能一次执行多条sql命令的,在mysql中执行sql文件的命令: mysql> source   c:\\test.sql; 另附mysql常用命令: 一) 连接MYSQL: 格式: mysql -h主机地址 -u用户名 -p用户密码 1.例1:连接到本机上的MYSQL 首先在打开DOS窗口,然后进入mysql安装目录下的bin目录下,例如: D:/mysql/bin,再键入命令my

python3 mysql 多表查询

python3 mysql 多表查询 一.准备表 创建二张表: company.employee company.department #建表 create table department( id int, name varchar(20) ); create table employee( id int primary key auto_increment, name varchar(20), sex enum('male','female') not null default 'male'

MySQL 架构组成--物理文件组成

博主QQ:819594300 博客地址:http://zpf666.blog.51cto.com/ 有什么疑问的朋友可以联系博主,博主会帮你们解答,谢谢支持! 一.MySQL Server 简介 什么是MySQL? 答:是目前IT行业最流行的开放源代码的数据库管理系统之一,它同时也是一个支持多线程高并发多用户的关系型数据库管理系统. 特点: 简单:安装简单 高效:读写性能高,仅次于oracle 可靠:运行稳定 MySQL 与其他数据库的简单比较: 1)       功能比较 2)       易

步步深入:MySQL架构总览->查询执行流程->SQL解析顺序

前言: 一直是想知道一条SQL语句是怎么被执行的,它执行的顺序是怎样的,然后查看总结各方资料,就有了下面这一篇博文了. 本文将从MySQL总体架构--->查询执行流程--->语句执行顺序来探讨一下其中的知识. 一.MySQL架构总览: 架构最好看图,再配上必要的说明文字. 下图根据参考书籍中一图为原本,再在其上添加上了自己的理解. 从上图中我们可以看到,整个架构分为两层,上层是MySQLD的被称为的‘SQL Layer’,下层是各种各样对上提供接口的存储引擎,被称为‘Storage Engin

MySQL架构总览->查询执行流程->SQL解析顺序

前言: 一直是想知道一条SQL语句是怎么被执行的,它执行的顺序是怎样的,然后查看总结各方资料,就有了下面这一篇博文了. 本文将从MySQL总体架构--->查询执行流程--->语句执行顺序来探讨一下其中的知识. 一.MySQL架构总览: 架构最好看图,再配上必要的说明文字. 下图根据参考书籍中一图为原本,再在其上添加上了自己的理解. 从上图中我们可以看到,整个架构分为两层,上层是MySQLD的被称为的'SQL Layer',下层是各种各样对上提供接口的存储引擎,被称为'Storage Engin

MySQL慢日志查询

MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录在MySQL中响应时间超过阀值的语句,具体指运行时间超过long_query_time值的SQL,则会被记录到慢查询日志中.long_query_time的默认值为10,意思是运行10S以上的语句.默认情况下,Mysql数据库并不启动慢查询日志,需要我们手动来设置这个参数,当然,如果不是调优需要的话,一般不建议启动该参数,因为开启慢查询日志会或多或少带来一定的性能影响.慢查询日志支持将日志记录写入文件,也支持将日志记录写入数据库表.

MySql开启慢查询

分析MySQL语句查询性能的方法除了使用 EXPLAIN 输出执行计划,还可以让MySQL记录下查询超过指定时间的语句,我们将超过指定时间的SQL语句查询称为“慢查询”. 查看/设置“慢查询”的时间定义 1 mysql> show variables like "long%"; 2 +-----------------+----------+ 3 | Variable_name | Value | 4 +-----------------+----------+ 5 | long