《MySQL系列-InnoDB引擎15》文件-日志文件-慢查询日志

news2024/10/6 12:22:40

在这里插入图片描述

日志文件

日志文件记录了影响MySQL数据库的各种类型活动。MySQL数据库中常见的日志文件有:

  • 错误日志(error log)
  • 二进制日志(bilog)
  • 慢查询日志(slow query log)
  • 查询日志(log)

这些日志文件可以帮助DBA对MySQL数据库的运行状态进行诊断,从而更好的进行数据库层面的优化。

慢查询日志

  通过错误日志(error log)可以获得关于数据库优化的信息,而慢查询日志(slow log)可以帮助DBA定位可能存在问题的SQL,从而进行SQL语句层面的优化。例如,可以在MySQL启动时设置一个阈值,将运行时间超过该值的所有SQL都记录到慢查询日志文件中。DBA每天或每过一段时间对其进行检查,确认是否有SQL语句需要进行优化。该阈值可以通过参数long_query_time来设置,默认值为10,代表10秒。

  在默认情况下,MySQL数据库并不启动慢查询日志,用户需要手动将这个参数设置为ON:

show variables like 'long_query_time'\G;

show variables like 'long_slow_queries'\G;

  还有两点需要注意的是。1:设置long_query_time这个阈值后,MySQL数据库会记录运行时间超过该值的所有SQL语句,但是运行时间刚好等于long_query_time的情况并不会被记录。2:从MySQL 5.1开始,long_query_time开始以微秒记录SQL语句运行的时间,之前仅用秒为单位记录。使用微妙记录SQL运行时间,可以供DBA更好的分析,对DBA来说,一条SQL语句运行0.5秒和0.05秒是非常不一样的。前者可能进行了表扫描,后面可能进行了索引。

  另一个跟慢查询日志有关的参数是log_queries_not_using_indexes,如果运行的SQL语句没有使用索引,则MySQL数据库同样会将这条SQL语句记录到慢查询日志文件。

mysql> show variables like 'log_queries_not_using_indexes';
+-------------------------------+-------+
| Variable_name                 | Value |
+-------------------------------+-------+
| log_queries_not_using_indexes | OFF   |
+-------------------------------+-------+
1 row in set (0.00 sec)

  MySQL 5.6.5版本开始新增了一个参数log_throttle_queries_not_using_indexes,用来表示每分钟允许记录到slow log的且未使用索引的SQL语句次数。该值默认为0,表示没有限制。在生产环境下,若没有使用索引,此类SQL语句被频繁记录到slow log,从而导致slow log文件的大小不断增加,故DBA可通过此参数进行配置。

  DBA可以通过慢查询日志来找出有问题的SQL语句,对其进行优化。然后随着MySQL数据库服务器运行时间的增加,可能会越来越多的SQL被记录到慢查询日志中,此时要分析该文件就显得不是那么简单和直观了。这时MySQL数据库提供了mysqldumpslow命令,可以很好的帮助DBA解决该问题。也可以通过查询mysql.slow_log表查看慢查询日志记录。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/160704.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

RTE 领域的发展,为视频编解码标准带来哪些新变化?丨Dev for Dev 专栏

本文为「Dev for Dev 专栏」系列内容,作者为声网资深视频算法负责人 戴伟。 01 视频编解码标准的历史和现在 1990 年左右 H.261 标准的制定,开启了视频编解码标准化的历程。经过 30 多年的努力,视频的编码效率得到了极大幅度的提升。在下图…

编程练习:找“单身狗“(三种解题法(不含暴力法))

目录 一.问题描述 二. 方法一:排序法 题解代码: 三.方法二:位运算法 第一步: 第二步: 第三步: 题解代码: 方法三:顺序表记录法 第一步: 第二步: …

c语言tips-【C语言多线程编程】

0.摘要 操作系统具有管理进程,进程调度的能力,线程,决定哪个进程、线程使用 CPU。很多时候我们需要在同一时间干不同的任务,这就需要我们通过多进程或者多线程来进行,在我们学习和工作中我们大部分用到的都是多线程,本…

SAP FICO 成本估算解析

成本估算解析 物料成本构成组件分类,比如下图中的G(Overhead)、L(Subcontracting)、E(Internal Activity)等。 同时它也分不同的视图,每个视图中包含了不同的组件。 对同一个工厂的同…

SpringEvent的使用

步骤:定义事件,继承ApplicationEvent定义监听,要么实现ApplicationListener接口,要么在方法上添加EventListener注解发布事件,调用ApplicationContext.publishEvent()或者ApplicationEventPublisher.publishEvent();1、…

附录C:Standard Parasitic Extraction Format(SPEF)

文章目录C.1 基础(Basics)C.2 格式(Format)C.3 完整语法知乎翻译圣经本附录将介绍标准寄生参数提取格式(SPEFSPEFSPEF),它是IEEEStd1481IEEE\ Std\ 1481IEEE Std 1481标准的一部分。 C.1 基础(Basics) SPEFSPEFSPEF允许以ASCIIASCIIASCII交换…

代码整洁之道,好的代码就是为了更美好的生活。

美国童子军有一条简单的军规:让营地比你来时更干净。当梳理代码时,坚守此军规:每次 review 代码,让代码比你发现它时更整洁。 一位大神说过:“衡量代码质量的唯一有效标准:WTF/min”,并配了一个…

Manjaro通过源码编译jdk11

我在编译中遇到的最大的问题就是gcc版本问题,因manjaro是滚动更新,所以gcc也是很新的版本,导致无法编译jdk11 1 下载源码 网上根据关键词查找jdk源码,查找出来很多可以下载源码的链接,这里我们使用github去官方仓库&a…

yolov5-6.0网络添加小目标检测头 TensorRT部署

小目标检测使用TPH-YOLOv5 中的yolov5l-xs-tph.yaml模型;对其中的C3STR替换为C3模块;本文的TensorRT部署是基于yolov5l-xs-tph修改后的模型训练部署,其精度一般主要学习如何TensorRT部署,都是在wang-xinyu基础上简单修改&#xff…

中科大2008年复试机试题

中科大2008年复试机试题 文章目录中科大2008年复试机试题第一题问题描述解题思路及代码第二题问题描述解题思路及代码第三题问题描述解题思路及代码第四题问题描述解题思路及代码第一题 问题描述 一个十进制正整数转换成二进制有多少个1 示例1 输入:10 输出:2解题思路及代码…

数据分析之Excel

自定义格式 一、自定义格式的结构 方式一: 代码结构组成代码码分为四个部分,中间用”;”号分隔,具体如下: 正数格式;负数格式;零格式;文本格式 两个代码部分,则第一部分用于正数和零, 第二部分用于负数 一个代码部分,则该部分将用…

【跟彤砸学编程】——第二课(上)

嗨害嗨大家好,这里是彤砸! 今天我们来看看——编程到底是个啥? 上节课滴链接~【跟彤砸学编程】——第一课 程序是什么? 程序数据算法; 数据 生活中到处都是数据—— 1,2,3,是数据 A,B,C是数据 图片是由像素构成&…

【CSDN年度总结】一个四线城市的程序员-苟延残喘

个人简介 首先本人从事软件开发工作近8年,在北京工作5年,2020年1月13号回来老家工作,已经整整3年了!!! 现在做工业大数据方面工作,曾就职于华为做手机系统研发工作。 在一个四线城市坚守做一个…

速看|低代码平台公司流辰信息为实现企业高效办公积极赋能!

流辰信息,历经多年的砥砺奋斗,终于在低代码开发行业斩获越来越多的市场份额,是一家专注于研发低代码产品的低代码平台公司。在持续奋斗的年月中,流辰信息将持续增强研发创新能力,为各企业实现高效办公协作效率强劲赋能…

XC-15媒资管理系统集成

学习页面查询课程计划 需求分析 到目前位置,我们已经可以编辑课程计划信息并且上传课程视频,下一步我们要是心啊在线学习页面动态获取章节对应的视频并且进行播放,在线学习页面所需要的信息有两类,一类是课程计划信息,一类是课程学习信息(视频地址,学习进度等),如下图 在线学…

我与CSDN相识的一年

一、保持初心,笃定前行,回首2022 1、1 保持初心 回想起与CSDN的相识也是有一年多了。最初的相识也是我刚进入大学的时候。那个时候我还是懵懂无知的一个计算机类的大学生。在老师留下的一次任务中,我发现自己有点解决不了,想上网…

如何处理mybatis处理数据库关系中的多对一关系呢?

测试环境的搭建: 导入lombok: 不懂得小伙伴可移步这篇文章 新建实体类: 拿我们日常生活中最常见的举例:多个学生对应一个老师 对于学生这边而言,关联… 多个学生关联一个老师[多对一] 对于老师而言,集…

BGP(边界网关路由协议)小实验

目录实验要求ospf协议启动关于BGP基本知识点BGP关系建立的配置BGP的宣告实验要求 如下实验拓扑,各个自治系统区域和网段已经标注 基本的ip配置,环回配置就不再展示。 要求:除了R5的环回外,其他环回均可以互相访问 ospf协议启动…

C语言进阶——自定义类型——位段、枚举、联合

结构体 目录 一. 位段 1.概念 2.位段的内存分配 3.位段的跨平台问题 4.位段的应用 二. 枚举 1.枚举类型的定义 2.枚举的优点 3.枚举的使用 三. 联合(共用体) 1.联合类型的定义 ​编辑 2.联合的特点 3. 联合大小的计算 一. 位段 1.…

Git 合并多条commit

文章目录修改前开始修改第一种方式: 命令行第二种方式: Android Studio遇到冲突的解决办法第一种:修改到底,干就完事了第二种:回滚吧,有点慌修改前 开始修改 第一种方式: 命令行 git rebase -i 01fc32484fb2d2229aa20 // 这里对应的是init的…