当前位置: 首页 > news >正文

MySQL 中各种日志简介

MySQL 日志

慢查询日志(Slow query log)

  • 慢查询⽇志由执⾏时间超过系统变量 long_query_time 指定的秒数的SQL语句组成,并且检
    查的⾏数⼤于系统变量 min_examined_row_limit 指定值。被记录的慢查询需要进⾏优化,
    可以使⽤mysqldumpslow客⼾端程序对慢⽇志进⾏分析汇总。
  • 获取初始锁的时间不计⼊执⾏时间,mysqld在执⾏完SQL语句并释放所有锁后才将符合条件的语
    句写⼊慢速查询⽇志,因此⽇志顺序可能与执⾏顺序不同。

慢查询日志的参数

  • long_query_time 的默认值是10,最小值是0;
  • 默认情况下,不记录管理语句,也不记录不使用索引的查询
  • 默认为关闭(不开启),要启⽤慢查询⽇志可以使⽤:请使用 –slow_query_log[={0|1}]
  • 默认日志名为host_name-slow.log,可以使用slow_query_log_file=file_name修改
  • 使用 –log-short-format 选项,以简要格式记录慢查询⽇志
  • 要记录管理语句,启⽤ log_slow_admin_statements 系统变量。管理语句包括 ALTER
    TABLEANALYZE TABLECHECK TABLECREATE INDEXDROP INDEX
    OPTIMIZE TABLEREPAIR TABLE
  • 要记录不使⽤索引的查询,启⽤ log_queries_not_using_indexes 系统变量。当记录不使
    ⽤索引的查询时,⽇志会快速增长,通过设置系统变量
    log_throttle_queries_not_using_indexes 限制每分钟写⼊慢查询⽇志同类查询的数
    量,默认值是0,表示无限制。

二进制日志(Binary log)

  • Linux下默认开启

  • ⼆进制⽇志包含数据库更改的"事件",不会记录 SELECT 和 SHOW ,例如:记录表的创建操作或

    表数据的更改,⼆进制⽇志还包含每个语句更新数据时花费的时间信息,启动⼆进制⽇志,对服务

    器性能稍微有些影响;

  • 除了基于⾏的⽇志模式,它还包含可能进⾏更改数据的语句事件,例如 DELETE 操作没有匹配到
    查找到的⾏;

  • ⼆进制⽇志的作用:

主从节点数据复制:从节点服务器读取主节点服务器上的⼆进制⽇志⽂件,并根据⼆进制⽇志
中记录的事件在从节点上执⾏相同的操作,保证主从节点服务器上数据⼀致,实现数据复制功
能。在主从复制专题中我们重点讲解复制过程;
数据恢复:从某个时间点恢复备份数据后,将重新执⾏备份时间点之后记录在⼆进制⽇志中的
事件。这些事件使数据库从备份点更新到当前最新状态

  • ⼆进制⽇志的语句中如果涉及⽤⼾的密码,则由服务器进⾏加密,不会以纯⽂本形式出现。

错误⽇志(Error log)

  • 主要记录MySQL服务器在启动、运行过程中发生的错误和异常情况。
  • 错误日志功能是默认开启的,且无法被禁止。

⼀般查询⽇志(General query log)

  • 记录客户端连接到MySQL服务器的时间、用户、主机等信息。
  • 记录客户端提交的所有SQL语句,包括数据的增删改查等操作。
  • 在MySQL数据库中,一般查询日志功能默认是关闭的。

中继日志(Relay Log)

  • 中继日志在从服务器上记录主服务器上的二进制日志(Binary Log)事件。
  • 从服务器通过读取和执行中继日志中的事件,实现与主服务器的数据同步。
  • 默认关闭

DDL日志(Data Definition Language)

  • 用于记录数据定义语言操作的日志。DDL操作用于管理、维护和修改数据库对象的结构,

    例如创建和修改数据表、视图、索引和存储过程等。

  • 默认关闭

回滚日志/撤销日志(undo log)

  • InnoDB存储引擎用来撤销SQL操作的一种日志。当一条写入类型的SQL语句执行时,都会记录Undo Log。

  • 事务回滚:当事务出现错误或需要主动执行回滚操作时,InnoDB使用Undo Log将事务的操作撤销,

    使数据库恢复到事务开始之前的状态。

  • MVCC(多版本并发控制):在并发场景下,InnoDB通过Undo Log支持MVCC,允许多个事务并发执行而不会互相阻塞。

    Undo Log保存了数据的多个版本,事务可以根据隔离级别读取适当的版本,而不是总是最新的数据。

重做日志(redo log)

  • Redo Log记录了对数据库所做的物理修改操作,这些修改操作是在事务执行过程中产生的。

    当系统发生故障或崩溃时,可以利用Redo Log进行数据的恢复,确保事务的持久性。

相关文章:

MySQL 中各种日志简介

MySQL 日志 慢查询日志(Slow query log) 慢查询⽇志由执⾏时间超过系统变量 long_query_time 指定的秒数的SQL语句组成,并且检 查的⾏数⼤于系统变量 min_examined_row_limit 指定值。被记录的慢查询需要进⾏优化, 可以使⽤mysqldumpslow客⼾端程序对慢…...

【每日论文】Text-guided Sparse Voxel Pruning for Efficient 3D Visual Grounding

下载PDF或者阅读论文,请点击查看:LlamaFactory - huggingface daily paper - 每日论文解读 | LlamaFactory | LlamaFactory 摘要 中文 在这篇论文中,我们提出了一种高效的多级卷积架构,用于3D视觉定位。传统的由于采用两阶段或基…...

Kylin server v10部署docker

这里不用写什么标题 1. docker环境1.1 docker-ce1.1.1 yum安装1.1.2 离线安装 1.2 docker-compose 2. 镜像载入3. 服务启停4. 其他 1. docker环境 1.1 docker-ce docker-ce是社区版docker服务,可以通过yum方式直接安装或者离线安装,在国产化环境中&…...

计算机之就业主流岗(Mainstream Computer Employment Positions)

计算机之就业主流岗 计算机行业一直以来都是就业市场中的热门领域,技术岗位种类繁多,但每个岗位都有自己的核心技能和职责方向。以下是计算机行业中主流的技术岗位及其特点介绍,帮助你更清晰地了解这些职业的内容和发展前景。 1. 后端开发 …...

DeepSeek 助力 Vue 开发:打造丝滑的日期选择器(Date Picker),未使用第三方插件

前言:哈喽,大家好,今天给大家分享一篇文章!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏关注哦 💕 目录 Deep…...

【Mac技巧】添加DNS解析到hosts文件

【Mac技巧】添加DNS解析到hosts文件 Add DNS Resolution to hosts on Mac 我们通常访问一个Web站点(即网址),需要输入网址关键字(例如: 太平洋汽车网),或者输入pcauto.com.cn即可。 这期间仅…...

【批判性思维有什么用?】

1.批判性思维,指的是在人格平等的状态下,对自己和他人观点做谨慎多角度地思考。它讲究逻辑和理性,是一种高效地积累知识的方法。 2.只有那些我们完全不熟悉的结论和我们已经熟悉得不能再熟悉的结论,对它们的反思,才能…...

Golang学习笔记_34——组合模式

Golang学习笔记_31——原型模式 Golang学习笔记_32——适配器模式 Golang学习笔记_33——桥接模式 文章目录 一、核心概念1. 定义2. 解决的问题3. 核心角色4. 类图 二、特点分析三、适用场景1. 文件系统2. 图形界面3. 组织架构 四、代码示例(Go语言)五、…...

以太网详解(八)传输层协议:TCP/UDP 协议

文章目录 传输层协议概述为什么需要传输层?传输层功能网络层与传输层在实现 “端到端” 传输的异同两类服务:面向连接/无连接服务 传输控制协议 TCPTCP 协议数据单元格式TCP 的重传机制快重传和快恢复快重传举例快恢复算法 用户数据报协议 UDPUDP 概述UDP 基本工作过…...

基于Spark抖音评论舆情分析系统

✔️情绪分析、文本挖掘、文本分类,词频统计、情感分析,词云制作,词语共现网络图、人物关系网络建立等 ✔️主营:指导解答anaconda、python数据分析、数据挖掘、词频统计、词云、情感分析、python机器学习、Flask Django web、jup…...

JAVA系列之数组的秘密(数组的一般用法+力扣 斯坦福大学练习精解)

大佬们好呀~ 更多精彩: 个人主页 JAVA专栏 文章目录 一、数组的概述1.1什么是数组?1.2注意:1.3建议: 二、数组的定义1.格式: 三、数组的静态初始化1.数组的初始化:2.静态初始化:格式:数组的长度&#xff1a…...

探索飞鹤奶粉奥秘,领会科技魅力

在科技迅猛发展的当下,AI 技术正深刻重塑各行业格局。乳制品行业亦不例外。近日,长江商学院「AI 未来空间站」的同学们深入走访了飞鹤集团,探寻其在数字化浪潮中的创新实践与卓越成就。 在飞鹤的智能化生产车间,同学们目睹了高度自…...

【数据仓库】StarRocks docker部署

StarRocks docker部署 一、环境准备安装 docker 及 docker-compose操作系统相关禁用及配置【CentOS Linux 7 (Core)】 二、StarRocks-v2.5【存算一体,3FE,3BE】BE节点配置FE节点配置服务启动BE节点添加FE 节点添加 三、监控(待完善)四、VIP Nginx Keepalived(待完善)五、Star…...

Java虚拟机面试题:内存管理(下)

🧑 博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/?__c1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,精通Java编…...

R语言用逻辑回归贝叶斯层次对本垒打数据与心脏移植数据后验预测检验模拟推断及先验影响分析|附数据代码...

全文链接:https://tecdat.cn/?p40152 在统计学领域中,层次建模是一种极为强大且实用的工具。它能够巧妙地处理复杂的数据结构,通过分层的方式对数据进行建模。在贝叶斯统计的框架内,层次建模优势尽显,其可以有效地融合…...

网页制作02-html,css,javascript初认识のhtml的文字与段落标记

用一首李白的将进酒,对文字与段落标记进行一个简单的介绍演示: 目录 一、标题字 1、标题字标记h 2、标题字对其属性align 二、文本基本标记 1、字体属性face 2、字号属性size 3、颜色属性 Color 三、文本格式化标记 1、粗体标记 b ,strong 2、…...

【SpringBoot苍穹外卖】debugDay04

一、getById 与 new 我在修改数据时,产生疑问,注释掉是我一开始写得,new对象是答案提供的,我就好奇两者之间区别。 1. 使用 setmealMapper.getById 获取现有对象 Setmeal setmeal setmealMapper.getById(setmealDTO.getId()); …...

C++中的顺序容器(一)

文章目录 顺序容器概述所有容器类型都支持的操作迭代器容器定义与初始化将一个容器初始化为另一个容器的拷贝标准库array具有固定大小 赋值和swap关系运算符 顺序容器的特有操作向顺序容器添加元素访问元素删除元素特殊的forward_list操作改变容器的大小容器操作可能是迭代器失…...

【复现DeepSeek-R1之Open R1实战】系列4:跑通GRPO!

目录 1 配置环境2 训练2.1 命令和配置参数2.2 num_generations2.2.1 参数定义2.2.2 参数含义2.2.3 示例2.2.4 使用场景2.2.5 示例代码 2.3 显存占用和耗时 3 结果 1 配置环境 关于环境配置,可以参考这篇博文:【复现DeepSeek-R1之Open R1实战】系列1&…...

Redis原理简述及发布订阅消息队列

目录 1 什么是Redis 2 Redis 非阻塞IO内部原理 2.1 IO多路复用策略 2.2 Reactor设计模式 3 基于PubSub的消息队列(发布-订阅) 由于集群之后存在多台服务器,并且不同客户端连接的可能是不同的服务器,因此在聊天过程中涉及到服…...

大数据学习栈记——Neo4j的安装与使用

本文介绍图数据库Neofj的安装与使用,操作系统:Ubuntu24.04,Neofj版本:2025.04.0。 Apt安装 Neofj可以进行官网安装:Neo4j Deployment Center - Graph Database & Analytics 我这里安装是添加软件源的方法 最新版…...

uni-app学习笔记二十二---使用vite.config.js全局导入常用依赖

在前面的练习中,每个页面需要使用ref,onShow等生命周期钩子函数时都需要像下面这样导入 import {onMounted, ref} from "vue" 如果不想每个页面都导入,需要使用node.js命令npm安装unplugin-auto-import npm install unplugin-au…...

HTML 列表、表格、表单

1 列表标签 作用:布局内容排列整齐的区域 列表分类:无序列表、有序列表、定义列表。 例如: 1.1 无序列表 标签:ul 嵌套 li,ul是无序列表,li是列表条目。 注意事项: ul 标签里面只能包裹 li…...

智能在线客服平台:数字化时代企业连接用户的 AI 中枢

随着互联网技术的飞速发展,消费者期望能够随时随地与企业进行交流。在线客服平台作为连接企业与客户的重要桥梁,不仅优化了客户体验,还提升了企业的服务效率和市场竞争力。本文将探讨在线客服平台的重要性、技术进展、实际应用,并…...

什么是库存周转?如何用进销存系统提高库存周转率?

你可能听说过这样一句话: “利润不是赚出来的,是管出来的。” 尤其是在制造业、批发零售、电商这类“货堆成山”的行业,很多企业看着销售不错,账上却没钱、利润也不见了,一翻库存才发现: 一堆卖不动的旧货…...

el-switch文字内置

el-switch文字内置 效果 vue <div style"color:#ffffff;font-size:14px;float:left;margin-bottom:5px;margin-right:5px;">自动加载</div> <el-switch v-model"value" active-color"#3E99FB" inactive-color"#DCDFE6"…...

OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别

OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别 直接训练提示词嵌入向量的核心区别 您提到的代码: prompt_embedding = initial_embedding.clone().requires_grad_(True) optimizer = torch.optim.Adam([prompt_embedding...

docker 部署发现spring.profiles.active 问题

报错&#xff1a; org.springframework.boot.context.config.InvalidConfigDataPropertyException: Property spring.profiles.active imported from location class path resource [application-test.yml] is invalid in a profile specific resource [origin: class path re…...

在QWebEngineView上实现鼠标、触摸等事件捕获的解决方案

这个问题我看其他博主也写了&#xff0c;要么要会员、要么写的乱七八糟。这里我整理一下&#xff0c;把问题说清楚并且给出代码&#xff0c;拿去用就行&#xff0c;照着葫芦画瓢。 问题 在继承QWebEngineView后&#xff0c;重写mousePressEvent或event函数无法捕获鼠标按下事…...

《Offer来了:Java面试核心知识点精讲》大纲

文章目录 一、《Offer来了:Java面试核心知识点精讲》的典型大纲框架Java基础并发编程JVM原理数据库与缓存分布式架构系统设计二、《Offer来了:Java面试核心知识点精讲(原理篇)》技术文章大纲核心主题:Java基础原理与面试高频考点Java虚拟机(JVM)原理Java并发编程原理Jav…...