MySQL中的三种日志

MySQL 包括三种类型的⽇志,分别是 binlog、 redolog 和 undolog,它们分别有不同的作⽤和特点。

binlog (存档日志)

binlogBinary log)是 MySQL 中的⼆进制⽇志⽂件,是 Server 层⽣成的的⽇志,主要⽤于数据备份和主从复制。⽤于记录 MySQL 服务器上的所有更新和修改操作。它可以记录所有的 DDLData Definition Language)和 DMLData Modification Language)操作,包括对表结构的更改、数据的插⼊、修改、删除等等。binlog是在事务提交后⽣成的,因此可以⽤于恢复数据库。

redolog

redologRedo log)⽤于恢复数据,保证数据的⼀致性和持久性。当 MySQL 发⽣修改时, redolog 会将这些操作记录下来,并写⼊磁盘。这样,当 MySQL 发⽣宕机或崩溃时,通过重放 redolog 就可 以恢复数据。

undolog

undologUndo log)⽤于回滚操作。当 MySQL 发⽣事务回滚时,undolog 会记录这些操作并将其写⼊磁盘。这样,当 MySQL 需要回滚时,通过重放 undolog 就可以回滚事务。

区别

binlog redolog 都是 MySQL 中的⼆进制⽇志,但是它们的作⽤和实现⽅式有所不同。binlog MySQL 记 录所有的操作,⽽ redolog 则是⽤于保证数据的⼀致性和持久性。此外,binlog 是逻辑⽇志,redolog 是物理⽇志。binlog 记录的是SQL语句,⽽ redolog 记录的是数据⻚的修改,所以 binlog 可以跨平台使⽤,⽽ redolog 不能。undolog redolog 的区别是,undolog 是⽤于回滚操作的,⽽ redolog 是⽤于恢复数据。

uodolog 格式由 trx_ 事务 id + roll_pointer 指针串成⼀个链表,即版本链。此外在读提交和可重复读 隔离级别中,uodolog 和快照 readView 实现了 MVCC

redolog:它是为了防⽌机器故障导致数据丢失的物理⽇志,它⽤于记录数据⻚做了什么修改,每当执⾏⼀ 条事务就会产⽣这样的⼀条或多条物理⽇志,然后通过顺序写写⼊磁盘。它和 uodolog 区别是:

redolog 记录了 此次事务完成后的数据状态,记录的是更新之后的值;undolog 记录了此次事务开始前的数据状态,记录的是更 新之前的值;它保证了数据的持久性。

binlog 是逻辑⽇志,在完成⼀条更新操作后,server 层会⽣成 binlog,等事务提交时,将此事务运⾏中产⽣的所 有 DDL 记录通过追加写统⼀写⼊ binlog ⽇志⽂件,保存的是全量的⽇志,⽤于备份恢复和主从复制。

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

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

相关文章

基于单片机汽车超声波防盗系统设计

**单片机设计介绍,基于单片机汽车超声波防盗系统设计 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机汽车超声波防盗系统设计概要主要涉及利用超声波传感器和单片机技术来实现汽车的安全防盗功能。以下是对…

八股 -- C#

面向对象 (三大特性) 三大特性目的是为了提供更好的代码组织、可维护性、扩展性和重用性 C#基础——面向对象 - 知乎 (zhihu.com) 封装 理解: 你不需要了解这个方法里面写了什么代码,你只需要了解这个方法能够给你返回什么数据&…

位运算 ----力扣2220

2220. 转换数字的最少位翻转次数 提示 一次 位翻转 定义为将数字 x 二进制中的一个位进行 翻转 操作,即将 0 变成 1 ,或者将 1 变成 0 。 比方说,x 7 ,二进制表示为 111 ,我们可以选择任意一个位(包含没有…

书生·浦语大模型-第一节课笔记

视频总结 23年发布的模型在一些材料中归位指令微调模型,后面逐渐升级应该已经是train的模型了 技术报告总结 InternLM2 Technical Report 评测与特点 6 dimensions and 30 benchmarks, long-context modeling, and open-ended subjective evaluations长文本…

猜数游戏(Python)

一、实验要求: (1)在游戏开始时,随机生成一个1~100之间的整数。 (2)在游戏中,玩家有10次机会猜数。如果10次都没有猜中,则游戏失败;否则,游戏成功。 &…

centos7.5安装gitlab-runner,配置CI/CD流水线

一般不建议gitlab-server和gitlab-runner装在同一台服务器 第一步:安装gitlab-runner,最好和gitlab实例版本一致 # 下载官方gitlab-runner安装脚本 curl -L "https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.rpm.sh" | s…

二级C语言程序设计模拟题

程序设计题。 编写函数int fun(int lim, int aa[MAX])&#xff0c;其功能是求出小于或等于lim的所有素数并放在aa数组中&#xff0c;并返回求出的素数的个数。 #include <conio.h> #include <stdio.h> #include <stdlib.h> #define MAX 100 int fun(int lim…

成为一名自由程序员

越来越多的程序员已经或希望加入到自由职业者的行列&#xff0c;你是否也是其中的一员呢&#xff1f;在这篇文章里我将尝试结合自身的一些经验&#xff0c;来告诉你成为自由程序员能够获得的那些益处&#xff0c;以及为了取得成功所需要面临的挑战。 自由程序员的类型 很多人把…

项目开发---用户登录发送短信实现(使用阿里云短信接口)(看这篇就够了)

目录&#xff1a; 使用阿里云开通短信服务教程编写代码 使用阿里云开通短信服务教程 阿里云官网&#x1f449;https://cn.aliyun.com/ 完成登录 进入短信服务 开通短信服务 购买短信条数 购买完成进入阿里云短信控制台https://dysms.console.aliyun.com/overview 开通个…

Taskflow应用:波前并行(Wavefront Parallelism)

2D的Wavefront如下图所示&#xff1a; #include <taskflow/taskflow.hpp>std::mutex cout_mutex; void format_str(std::string const& str) {std::lock_guard<std::mutex> lock(cout_mutex); std::cout << str << std::endl; }std::string crea…

C语言点h文件设置

1 在C语言中&#xff0c;.h 文件被称为头文件&#xff0c;它通常包含了函数声明、宏定义、类型定义和变量声明等&#xff0c;这些内容可以被其他源文件&#xff08;.c 文件&#xff09;通过 #include 指令包含并使用。头文件的使用是为了提高代码的可重用性和模块化程度。 2设…

《自动机理论、语言和计算导论》阅读笔记:p68-p114

《自动机理论、语言和计算导论》学习第4天&#xff0c;p68-p114总结&#xff0c;总计47页。 一、技术总结 1.inverted indexes 明白单词的意思是“反转的索引”&#xff0c;但是不明白其在书中具体指什么&#xff0c;去查询资料的话需要花很不多时间&#xff0c;先继续往下看…

为什么不推荐用innerText,最好用innerHTML

innerHTML和innerText 这两个属性都是获取document对象的文本内容的,innerHTML指的是从对象的起始位置到终止位置的全部内容,包括Html标签。innerText 指的是从起始位置到终止位置的内容,但它去除Html标签。 **同时,innerHTML 是所有浏览器都支持的,innerText 是IE浏览器和c…

关于使用vscode搭建c/c++编程环境

目录 关于使用vscode搭建c/c编程环境一、前言二、安装 IDE 二、安装TDM-GCC安装三、安装C/C环境四、编写代码并进行编译 关于使用vscode搭建c/c编程环境 一、前言 一直觉得vscode是生产强有力的生产工具&#xff0c;基于此&#xff0c;做一篇学习笔记进行记录。 二、安装 ID…

批处理(Batch)把Excel文件xls格式和xlsx格式进行互换

批处理&#xff08;Batch&#xff09;把Excel文件xls格式改成xlsx格式以及xlsx格式改为xls格式。 Case1:xls转xlsx - 单个文件.bat $Excel New-Object -ComObject Excel.Application $Excel.Visible $false $Workbook $Excel.Workbooks.Open("C:\Test\Excel\1.xls&qu…

服务器停止解析域名,但仍然可以访问到

1.centos7 如何刷新dns缓存 在CentOS 7上&#xff0c;DNS缓存由nscd&#xff08;Name Service Cache Daemon&#xff09;管理&#xff0c;如果系统上安装了nscd&#xff0c;可以通过清除nscd缓存来刷新DNS缓存。 要刷新DNS缓存&#xff0c;请执行以下命令&#xff1a; sudo …

IPD推行成功的核心要素(一)什么企业需要和适合IPD?

IPD&#xff0c;全称为“Integrated Project Delivery”&#xff0c;即集成产品开发。它是一种全新的项目管理方法&#xff0c;目前已经应用到了各行各业的项目管理中。IPD是一种以协同合作为核心的工作模式&#xff0c;在这种模式下&#xff0c;项目中的所有相关方在项目的整个…

如何使用免费的ChatGpt3.5

如何使用免费的ChatGpt 最近免费的gpt3.5很多都不怎么行了实在是太给力了尾声 最近免费的gpt3.5很多都不怎么行了 原因是什么呢&#xff1f;因为openai已经取消了免费的5刀赠送&#xff0c;那么这些人手上的免费的sses-key 用完后&#xff0c;就基本上全军覆没了&#xff0c;再…

Codeforces Round 932 (Div. 2)(A,B,C,D)

比赛链接 AB都是思维&#xff0c;更确切地说&#xff0c;A考了字符串字典序&#xff0c;很经典的贪心考点&#xff0c;B考了MEX运算。C出的还是比较好的&#xff0c;dp方法值得学习。D题是个不太好想的容斥&#xff0c;主要是变量有点多&#xff0c;容易搞混。 A. Entertainme…

校园招聘管理系统(源码+文档)

校园招聘管理系统&#xff08;小程序、ios、安卓都可部署&#xff09; 文件包含内容程序简要说明含有功能项目截图客户端热门岗位校园招聘首页个人简历添加个人简历我的界面注册界面查看个人简历界面个人资料界面登录界面消息界面退出登录 管理端登录界面![请添加图片描述](htt…