MySQL slow log 慢日志

sql慢日志用于记录执行时间超过指定阈值的SQL,对于系统性能和故障排错非常有帮助

1.如何开启sql慢日志

--开启slow log (默认情况下,MySQL是不开启慢查询日志的。)
set @@global.slow_query_log=1;

--设置slow log文件名,默认放在数据目录下
set @@global.slow_query_log_file=slow_log;

--设置将慢日志同时记录到数据表和磁盘文件中
set @@global.log_output='TABLE,FILE';

需要 supper权限(超管权限)

在服务端配置

/etc/my.cnf
[mysqld]
slow_query_log = ON
slow_query_log_file = /var/lib/mysql/instance-1-slow.log
long_query_time = 2

配置后,重启 mysql 服务即可

在命令行配置

查询 SHOW VARIABLES LIKE 'long_query_time';
查询 SHOW VARIABLES LIKE 'slow_query_log';
设置 set global slow_query_log='ON';
设置 set global slow_query_log_file='/var/lib/mysql/instance-1-slow.log';
设置 set global long_query_time=2;

slow_query_log=0 | 1
0为关闭,1为开启
slow_query_log_file=file_name
指定慢日志文件名,默认名字为host_name-slow.log,如果不是绝对路径,那么默认存放在datadir目录下
log_output=table |file |none
table 表示慢日志信息存放在mysql.slow_log数据表里;
file 表示慢日志信息存放在磁盘文件上,由上述slow_query_log_file指定, 不指定为file,即使设置了slow_query_log_file也是无效的;
none 表示即使开启了慢日志功能,也不会记录任何慢SQL

2.什么SQL会记录到慢日志里

long_query_time
该参数定义一个SQL的执行时间阈值,单位为秒,默认是10,最小值为0,可以指定0.1表示100ms。

min_examined_row_limit
该参数定义一个SQL所读取的数据行数;

log_queries_not_using_indexes
该参数决定是否记录未使用索引的SQL;

log_slow_admin_statements
该参数决定是否记录管理类的命令,有 ALTER TABLE,ANALYZE TABLE, CHECK TABLE, CREATE INDEX, DROP INDEX, OPTIMIZE TABLE,REPAIR TABLE,默认是不记录这一类语句到慢日志。

log_throttle_queries_not_using_indexes
该参数决定每分钟记录未使用索引的SQL的数量上限,因为未使用索引的SQL可能会非常多,导致慢日志空间增长飞快。

log_slow_slave_statements
该参数在从库上设置,决定是否记录在复制过程中超过long_query_time的SQL,如果binlog格式是row,则即使开启了该参数,也不会记录相关SQL。

3.SQL被记录到慢日志里,需要满足以下条件

1. 管理类语句不会记录,除非开启了log_slow_admin_statements;

2. 执行时间需要超过long_query_time,或者对于未使用索引的SQL,需要开启log_queries_not_using_indexes,并且记录数量在log_throttle_queries_not_using_indexes之下;

3. SQL需要读取数据行数超过min_examined_row_limit;

4. 从库的复制语句默认不记录,除非binlog格式是statement且开启log_slow_slave_statements。

4.mysql.slow_log表结构

desc mysql.slow_log;

MySQL slow log 慢日志

华为云 云数据库RDS查看慢查询

控制台 => 云数据库RDS => 实例名称/ID => 云DBA => (某实例)详情 => DBA智能运维 => 慢SQL | 慢日志明细 => 导出 => 导出OBS桶 => 查看导出列表

MySQL slow log 慢日志

Original: https://www.cnblogs.com/linuxshare/p/16731805.html
Author: 爱折腾的大臭臭
Title: MySQL slow log 慢日志

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/573842/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • SQL45 将titles_test表名修改为titles_2017

    本题链接本题省略表结构。需要用到RENAME TABLE子句,该子句可实现一或多个表名称的修改。子句语法为: RENAME TABLE tbl_name TO new_tbl_na…

    Linux 2023年6月13日
    099
  • JavaScript快速入门-06-函数

    6 函数 6.1 函数定义 函数可以封装语句,然后在任何地方、任何时间执行。JavaScript中的函数使用 function关键字声明,主要由 函数名、 函数参数和 函数体组成。…

    Linux 2023年6月7日
    0112
  • 复杂任务中,流程的解耦设计

    做事不能急,得一步异步的来; 一、业务场景 在系统开发的过程中,必然存在耗时极高的动作,是基于请求响应模式无法解决的问题,通常会采用解耦的思维,并基于异步或者事件驱动的方式去调度整…

    Linux 2023年6月14日
    074
  • Android系统中有哪些日志信息和工具

    Android系统日志和工具 我们经常需要查看设备里面的各种日志信息。所以有必要了解android系统里面有哪些日志,以及用什么方式可以提取这些日志。以我手头的红米note4xpl…

    Linux 2023年6月7日
    0101
  • USB转双串口产品设计-TTL串口

    基于USB转2路串口芯片CH342,可以为各类主机扩展出2个独立的串口。CH342芯片支持使用操作系统内置的CDC串口驱动,也支持使用厂商提供的VCP串口驱动程序,可支持Windo…

    Linux 2023年6月7日
    0107
  • ArchLinux安装-2022-01-12

    这篇教程,是我基于B站up住theCW的视频教程整理的,其中添加了一些我在安装n次之后的经验(虽然失败过几次,但我现在安装不会再出差错,所以请放心的看此教程) 当然,我认为theC…

    Linux 2023年5月27日
    095
  • podman无根用户基本设置和使用

    在允许没有root特权的用户运行Podman之前,管理员必须安装或构建Podman并完成以下配置 cgroup V2Linux内核功能允许用户限制普通用户容器可以使用的资源,如果使…

    Linux 2023年6月13日
    093
  • C语言之初认识

    1.低级语言可以简明说:非常接近底层语言 2.可移值性:可以嵌入各大系统中 3.简单性:语法简单,语法规则没有太大限制,c语言的代码要求比较随意,一行可以写入多行语句,每条语句写完…

    Linux 2023年6月8日
    091
  • 【凸优化】3 多面体,单纯形,半正定锥

    1 多面体 Polyhedra 定义:多面体为一系列的(有限个)线性等式和不等式的解集: [\mathcal{P}={x|a_j^T x \leq b_j, j=1,……

    Linux 2023年6月7日
    0109
  • 计算机硬件的读写速度差异

    现代计算机系统 存储器 寄存器 CPU时钟周期 高速缓存 主存 固态硬盘 机械硬盘 压榨CPU性能带来的问题 有序性问题 可见性问题 原子性问题 作者:小牛呼噜噜 | https:…

    Linux 2023年6月6日
    0133
  • Identity Server 4资源拥有者密码认证控制访问API(二)

    基于上一篇文章中的代码进行继续延伸,只需要小小的改动即可,不明白的地方可以先看看本人上一篇文章及源码: Identity Server 4客户端认证控制访问API 一、 Quick…

    Linux 2023年6月13日
    0114
  • CentOS 7安装jdk-mysql-nginx

    安装jdk 设置开机自启 重启systemctl Original: https://www.cnblogs.com/nianxue/p/16618805.htmlAuthor: …

    Linux 2023年6月6日
    081
  • 如何在博客中添加Aplayer音乐播放器

    前言 是否有一首音乐,前奏一响起,让你灵魂不自主的颤栗。音乐就像老胶卷,每个旋律,每句歌词,都承载着每个人的往事回忆和情愫感受。 我收藏了好多的音乐,奈何好多音乐受版权限制,需要购…

    Linux 2023年6月7日
    0107
  • Linux命令行如何实现sftp限速传输

    上周遇到一个需要在Linux命令行模式下进行sftp限速传输的场景(公司带宽占用限制) 百度后无果,问老江湖F哥也没办法(百度出的结果都是用lftp指令,内网环境无法安装) 我真的…

    Linux 2023年5月27日
    090
  • 【计算机取证篇】镜像挂载利器-Arsenal Image Mounter

    Arsenal Image Mounter是一款非常优秀的磁盘挂载工具,在Microsoft Windows中可以将磁盘映像的内容作为”真实磁盘”挂载到系统…

    Linux 2023年6月13日
    0139
  • ASP.NET MVC实现POST方式的Redirect

    我们知道,在ASP.NET MVC中,要从一个Action跳转到另一个Action,通常是用一系列以”Redirect”开头的方法 Redirect Red…

    Linux 2023年6月13日
    0103
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球