mysql配置调优-开启慢查询日志-slow_query_log
工作中,会遇到需要查看mysql的top 20 慢sql,逐个进行优化,加上必要的索引这种需求,这时就需要开启数据库的慢查询日志的功能
1.查询当前慢查询日志的状态
# 默认为关闭状态
mysql
----------------------------
show variables like "%slow_query_log%";
----------------------------
# 实例演示:
mysql> show variables like "%slow_query_log%";
+---------------------+-------------------------------------------+
| Variable_name | Value |
+---------------------+-------------------------------------------+
| slow_query_log | OFF |
| slow_query_log_file | /usr/local/mysql/data/-mysql-slow.log |
+---------------------+-------------------------------------------+
rows in set (0.00 sec)
# 可以看到,慢查询日志的状态和默认的慢查询日志的文件
[root@-mysql ~]# cd /usr/local/mysql/data/
[root@-mysql data]# ll
总用量
-rw-r----- mysql root 11月 -mysql.err
-rw-rw---- mysql mysql 11月 auto.cnf
-rw-rw---- mysql mysql 12月 : ibdata1
-rw-rw---- mysql mysql 12月 : ib_logfile0
-rw-rw---- mysql mysql 12月 ib_logfile1
drwx------ mysql mysql 11月 mysql
-rw-rw---- mysql mysql 12月 : mysql-bin.
-rw-rw---- mysql mysql 12月 : mysql-bin.
-rw-rw---- mysql mysql 12月 : mysql-bin.index
drwx------ mysql mysql 11月 performance_schema
# 但实际在该位置并未生成慢查询日志的文件
2.手动开启慢查询日志
# 登陆mysql进行设置
mysql
----------------------------
set global slow_query_log=on;
----------------------------
# 实例演示:
mysql> set global slow_query_log=on;
Query OK, rows affected (0.02 sec) mysql> show variables like "%slow_query_log%";
+---------------------+-------------------------------------------+
| Variable_name | Value |
+---------------------+-------------------------------------------+
| slow_query_log | ON |
| slow_query_log_file | /usr/local/mysql/data/-mysql-slow.log |
+---------------------+-------------------------------------------+
rows in set (0.00 sec)
# 可以看到,慢查询日志的状态更改了
[root@-mysql data]# ll
总用量
-rw-r----- mysql root 11月 -mysql.err
-rw-rw---- mysql mysql 1月 : -mysql-slow.log
-rw-rw---- mysql mysql 11月 auto.cnf
-rw-rw---- mysql mysql 12月 : ibdata1
-rw-rw---- mysql mysql 12月 : ib_logfile0
-rw-rw---- mysql mysql 12月 ib_logfile1
drwx------ mysql mysql 11月 mysql
-rw-rw---- mysql mysql 12月 : mysql-bin.
-rw-rw---- mysql mysql 12月 : mysql-bin.
-rw-rw---- mysql mysql 12月 : mysql-bin.index
drwx------ mysql mysql 11月 performance_schema
# 检查文件发现自动生成了慢查询日志的文件
3.修改mysql配置文件保证永久生效
# 由于慢查询日志记录的信息比较多,会影响mysql的性能,所以生产环境不建议长期开启
vim /etc/my.cnf
-----------------------------------
slow_query_log=
slow_query_log_file=/usr/local/mysql/data/slow-query.log
-----------------------------------
# 其他可用的配置参数
long_query_time=1 # 慢查询日志的时间定义(秒),默认为10秒,多久就算慢查询的日志
log_queries_not_using_indexes= # 将所有没有使用带索引的查询语句全部写到慢查询日志中
# 修改完配置重启即可生效
==== 完毕,呵呵呵呵 ====
mysql配置调优-开启慢查询日志-slow_query_log的更多相关文章
- Mysql配置调优(转自阿铭论坛)
Mysql配置文件my.cnf参数优化对于新手来讲,是比较难懂的东西,其实这个参数优化,是个很复杂的东西,对于不同的网站,及其在线量,访问量,帖子数量,网络情况,以及机器硬件配置都有关系,优化不可能一 ...
- mysql数据库优化之开启慢查询日志
进入mysql数据库,使用 show variables like 'slow_query_log'; 查看是否开启了慢查询日志 value值为OFF,则慢查询日志没有开启,在开启慢查询日志之前,我们 ...
- aws mysql 开启慢查询日志, 并利用mysqlsla 分析
1.开启慢查询日志服务 (a) sql 查询配置 # 查看慢日志是否开启,开启为ON show variables like 'slow_query%'; show variables like 'l ...
- MySQL:动态开启慢查询日志(Slow Query Log)
前言 在开发中,高效能的程序 也包括 高效能的查询,所以优化SQL也是程序员必要技能之一.要优化就必须要有慢日志记录才可以知道哪些查询慢,然后反向去修改 慢日志设置方式 写入文件 写入数据库 实践操作 ...
- MySQL 开启慢查询日志
1.1 简介 开启慢查询日志,可以让MySQL记录下查询超过指定时间的语句,通过定位分析性能的瓶颈,才能更好的优化数据库系统的性能. 1.2 登录数据库查看 [root@localhost lib]# ...
- MySQL跟踪SQL执行之开启慢查询日志
查询慢查询相关参数 show variables like '%quer%'; slow_query_log(是否记录慢查询) slow_query_log_file(慢日志文件路径) ...
- MySQL开启慢查询日志时报Errcode: 13 的解决方法
开启慢查询日志时会出现(Errcode: 13 - Permission denied)文件找不到的错误,但文件明明是存在的并且有读写的权限. mysql> set global slow_qu ...
- mysql中开启慢查询日志
开启慢查询日志,需要在配置文件my.ini中配置. long_query_time = 1 #设置慢查询时间,配置是下划线log-slow-queries = d:\mysql5\logs\mysql ...
- MySQL 开启慢查询日志与普通日志
一.开启满查询日志 1.查看慢查询日志 SHOW VARIABLES LIKE '%slow%'; 2.开启慢查询日志 set GLOBAL slow_query_log =on; 3.设置慢查询日志 ...
随机推荐
- JS获取客户端系统当前时区
<script> function getClientTimezone(){ var oDate = new Date(); var nTimezone = -oDate.getTimez ...
- lua关于参数生命周期的研究
local num = 123 local str = "abc" local tb ={} 数字和字符串类型的值作为参数传递的时候,是复制值,2个独立的内存地址 table类型的 ...
- Linux 安装配置 Nginx
前言 准备用flask做一个自己的博客网站,打算用Nginx来部署,所以在阿里云的服务器上安装Nginx,参考了很多教程,现在将步骤以及自己遇到的坑写下来,希望能对别人有所帮助. 我用的服务器是阿里云 ...
- springcloud21---Config-bus实现配置自动刷新
Pivotal(毕威拓)有VMware和EMC成立的. RabbitMQ是由ERlang(爱立信开发的,面向并发的编程语言),安装RabbitMQ先要安装ERlang. package com.itm ...
- 【开源】检查更新程序 CheckUpdate.Net 的实现
访问最新源代码及更新历史:http://git.oschina.net/xcong/CheckUpdate.Net DownLoad 更新历史 version 1.2 [新增]添加UpdateFile ...
- 【运维技术】windows安装apache服务器,实现域名对应端口的解析跳转
linux 安装参考搭建dede项目的功能 windows 安装虚拟机的指南参考:http://jingyan.baidu.com/article/29697b912f6539ab20de3cf8.h ...
- PHP设计模式_适配器模式
将各种截然不同的函数接口封装成统一的API. PHP中的数据库操作有MySQL,MySQLi,PDO三种,可以用适配器模式统一成一致,使不同的数据库操作,统一成一样的API.类似的场景还有cache适 ...
- IDEA类和方法注释模板设置
在开发中使用idea的注释总结:由于IDEA自带的注释模板不是太好用,所以整理一下适用于自己的模板: 一.首先我们来设置IDEA中类的模板:(IDEA中在创建类时会自动给添加注释) 1.File--& ...
- cuda8.0 出错:/usr/bin/ld: 找不到 -lGL【转】
本文转自:https://blog.csdn.net/u010159842/article/details/56833030 最近在学习深度学习,在搭建CUDA8.0的时候,出现一个非常不好的问题: ...
- Mininet 跑一个简单的ping测试
安装地址:https://github.com/mininet/mininet/wiki/Mininet-VM-Images 登录用户:mininet 密码:mininet 执行命令:sudo mn ...