binlog 和 redolog 有什么区别
binlog 和 redolog 都是 Mysql 里面用来记录数据库数据变更操作的日志.
binlog
其中 binlog 主要用来做数据备份、数据恢复和数据同步,在Mysql 的主从数据同步的场景中,master 节点的数据变更,会写入到 binlog 中,然后再把 binlog 中的数据通过网络传输给slave 节点,实现数据同步。

redolog
总结
binlog 和 redolog 的区别有很多,可以简单总结三个点:
- 记录的信息不同,binlog 是记录数据库的逻辑变化,它提供了三种日志格式分别是 statement,row 以及 mixed; redo log 记录的是物理变化,也就是数据页的变化结果。
- 使用场景不同,binlog 主要用来做数据备份、数据恢复、以及主从集群的数据同步;Redo Log 主要用来实现 Mysql 数据库的事务恢复,保证事务的 ACID 特性。当数据库出现崩溃的时候,Redo Log 可以把未提交的事务回滚,把已提交的事务进行持久化,从而保证数据的一致性和持久性。
- 记录的时机不同, binlog 是在执行 SQL 语句的时候,在主线程中生成逻辑变化写入到磁盘中,所以它是语句级别的记录方式; RedoLog 是在 InnoDB 存储引擎层面的操作,它是在 Mysql 后台线程中生成并写入到磁盘中的,所以它是事务级别的记录方式,一个事务操作完成以后才会被写入到 redo log 中。
相关文章:
binlog 和 redolog 有什么区别
binlog 和 redolog 都是 Mysql 里面用来记录数据库数据变更操作的日志. binlog 其中 binlog 主要用来做数据备份、数据恢复和数据同步,在Mysql 的主从数据同步的场景中,master 节点的数据变更,会写入到 binlog 中,然后再把 binl…...
Git 修改已提交的用户名和邮箱
Git 修改已提交的用户名和邮箱 修改上一次提交的邮箱和用户名 git commit --amend --author Name<email>批量修改多次提交的邮箱和用户名 新建一个 .sh 脚本在 git 根目录下.sh脚本内容如下 git filter-branch --env-filter an"$GIT_AUTHOR_NAME" am"…...
小游戏外包开发流程及费用
小游戏的开发流程和费用会因项目的规模、复杂性和所选技术平台而有所不同。以下是一般的小游戏开发流程和可能的费用因素,希望对大家有所帮助。北京木奇移动技术有限公司,专业的软件外包开发公司,欢迎交流合作。 开发流程: 概念和…...
Homeassistant docker配置
Homeassistant docker配置 【说明】本系列为自用教程,记录以便下次使用 【背景】一台J1900 4G64G的小主机,安装了OP系统,里面自带了Docker。为实现Homeassistant(简称HA)控制智能家居设备,进行如下配置。 【…...
Go 深入解析非类型安全指针
一、引言 非类型安全指针(也称为“裸指针”或“原始指针”)在编程领域中一直是一个具有争议和挑战性的主题。它们赋予程序员直接操作计算机内存的能力,为高级性能优化和底层系统交互提供了可能。然而,这种能力往往伴随着高风险&a…...
vue动态绑定class
Vue.js 允许您使用 v-bind 指令或简写的 : 来动态绑定 class 属性。这允许您基于某些条件为元素添加或删除类名,从而实现动态样式控制。以下是一些示例: 动态添加单个类名: <template> <div> <p :class"{ active: isActi…...
UDP网络通信反复发收
package UDP2;import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.InetAddress; import java.util.Scanner;/* * 完成UDP 通信快速入门 实现发1收1*/ public class Client {public static void main(String[] args) throws Exception{// …...
ip报头和ip报文切片组装问题
在tcp层将数据打包封装向下传递后,网络层将其整个看为一个数据,然后对其数据加网络报头操作,在网络层最具有代表的协议就是ip协议。在这里我们探究ipv4的报头。 ip报头 4位版本:指定ip的版本号,对于ipv4来说就是4。 …...
linux之应用编程回顾总结
gcc编译过程 一个c/c文件要经过预处理、编译、汇编和链接4个阶段,才能变成可执行文件 1.预处理 C/C源文件中,以“#”开头的命令被称为预处理命令,如包含命令“#include”、宏定义命令“#define”、条件编译命令“#if”、“#ifdef”等。预处理…...
nginx配置负载均衡--实战项目(适用于轮询、加权轮询、ip_hash)
👨🎓博主简介 🏅云计算领域优质创作者 🏅华为云开发者社区专家博主 🏅阿里云开发者社区专家博主 💊交流社区:运维交流社区 欢迎大家的加入! 🐋 希望大家多多支…...
Mac GPU MPS常用方法
Requirements Mac computers with Apple silicon or AMD GPUs macOS 12.3 or later Python 3.7 or later Xcode command-line tools: xcode-select --install 判断是否可用 import torch if torch.backends.mps.is_available():mps_device torch.device("mps")x …...
【数据结构】线性表(四)双向链表的各种操作(插入、删除、查找、修改、遍历打印)
目录 线性表的定义及其基本操作(顺序表插入、删除、查找、修改) 四、线性表的链接存储结构 1. 单链表 2. 循环链表 3. 双向链表 a. 双向链表节点结构 b. 创建一个新的节点 c. 在链表末尾插入节点 d. 在指定位置插入节点 e. 删除指定位置的节点…...
数据结构和算法——图
图 有向图 带权图 邻接矩阵 邻接表相较于邻接矩阵,减少了存储空间; 邻接表 参考视频:【尚硅谷】数据结构与算法(Java数据结构与算法)_哔哩哔哩_bilibili...
大数据学习(16)-mapreduce详解
&&大数据学习&& 🔥系列专栏: 👑哲学语录: 承认自己的无知,乃是开启智慧的大门 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言📝支持一下博主哦ᾑ…...
Android---OkHttp详解
OkHttp 是一套处理 HTTP 网络请求的依赖库,由 Square 公司设计研发并开源,目前可以在 Java 和 Kotlin 中使用。对于 Android App,OkHttp 现在几乎已经占据了所有的网络请求操作。RetroFit OkHttp 实现网络请求似乎成了一种标配。 因此&…...
向某文件中逐秒追加带序号输入当前时间 fgets fputs fprintf sprintf
//向某文件中逐秒追加带序号输入当前时间 #include<stdio.h> #include<stdlib.h> #include<time.h> #include<string.h> #include <unistd.h> int main(int argc, char const *argv[]) { time_t tv; // time(&tv);//法1:获取秒数 …...
同为科技(TOWE)机架PDU产品在IDC数据中心机房建设中的应用
当今社会互联网发展迅速, 随着带宽需求的提升, 网络的保密性、安全性的要求就越来越迫切。PDU(Power Distribution Unit) 是 PDU具备电源分配和管理功能的电源分配管理器。PDU电源插座是多有设备运行的第一道也是最为密切的部件, PDU的好坏直…...
Elasticsearch学习笔记
1.核心概念 bucket: 一个数据分组(类似于sql group by以后的数据)metric:对bucket执行的某种聚合分析的操作,比如说求平均值,最大值,最小值。一些系列的统计方法(类似 select count(1) MAX MIN AVG) 请…...
Java框架随笔
Maven面试题 Myabtis面试题 文章目录 Maven面试题Myabtis面试题 1、简述Spring Boot的启动流程2、如何理解Bean的生命周期3、MyBatis的主要功能4、MyBatis的组成部分5、MyBatis的动态SQL 1、简述Spring Boot的启动流程 Spring Boot的启动流程可以分为以下几个步骤:…...
自然语言处理基础——词表示
词表示 把自然语言中最基本的语言单元——词转换为机器能够理解的 词表示能完成以下两个能力 词相似度计算 词与词之间语义的关系 近义词&上位词 使用近义词或上位词表示的问题 遗漏差异 遗漏新的释义 带有主观性 数据吸收 需要大量人工构建 One-Hot Representation …...
告别关键词搜索!用GME多模态向量-Qwen2-VL-2B实现语义级查找
告别关键词搜索!用GME多模态向量-Qwen2-VL-2B实现语义级查找 你有没有过这样的经历? 想找一张去年团队聚餐的照片,明明记得照片里有人举着蛋糕,背景是落地窗,但翻遍手机相册,输入“蛋糕”、“聚餐”、“团…...
3个实战技巧:用Real-ESRGAN让模糊图像重获新生
3个实战技巧:用Real-ESRGAN让模糊图像重获新生 【免费下载链接】Real-ESRGAN Real-ESRGAN aims at developing Practical Algorithms for General Image/Video Restoration. 项目地址: https://gitcode.com/gh_mirrors/re/Real-ESRGAN 你是否曾面对模糊的老照…...
用LabVIEW做个智能家居小系统:把温度报警、风扇控制和波形监控都集成到一个VI里
用LabVIEW构建智能家居监控系统:从模块化到集成化实战 在物联网技术快速渗透的今天,智能家居系统正从概念走向普及。对于工程师和学生而言,如何将分散的传感器、控制器整合为有机整体,是提升工程实践能力的关键跳板。LabVIEW作为…...
AI 工作流防线失守:Flowise 漏洞被黑客大规模利用
网络安全研究人员发现,威胁攻击者已找到向Flowise低代码平台注入任意JavaScript的方法。该平台主要用于构建定制化大语言模型(LLM)和Agent系统。 Flowise : Build AI Agents And LLM Workflows Visually - OSTechNix 这一代码注入漏洞源于平…...
python opencv-python
# 聊聊 OpenCV-Python 那点事儿 如果你在计算机视觉这个圈子里待过一阵子,大概率会听过 OpenCV 的大名。而 OpenCV-Python,可以看作是这座庞大宫殿的一扇侧门——它保留了宫殿里绝大多数珍宝,却提供了一条更轻快、更亲切的进入路径。 它究竟是…...
一键备份QQ空间:GetQzonehistory帮你永久保存青春记忆
一键备份QQ空间:GetQzonehistory帮你永久保存青春记忆 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory 还记得那些年你在QQ空间写下的第一条说说吗?那些深夜的情感…...
cv_unet_image-colorization快速部署:conda虚拟环境隔离最佳实践
cv_unet_image-colorization快速部署:conda虚拟环境隔离最佳实践 1. 项目概述 cv_unet_image-colorization 是一款基于 UNet 架构深度学习模型开发的本地化图像上色工具。这个工具采用了阿里魔搭开源的图像上色算法,能够精准识别黑白图像中的物体特征、…...
【信息安全概论 实验报告5】SQL注入实验
上一篇:【信息安全概论 实验报告4】CA证书实验 目录 实验目的 二、实验环境 三、实验内容 四、实验步骤 五、问题回答 实验目的 1、理解SQL注入的原理 2、学习手工注入的过程 二、实验环境 目标机:192.168.1.3 工具: C:\实验工具集\01_WEB安全…...
T113平台Tina5.0(OpenWrt)开发实战:编译指令深度解析与高效编译指南
1. T113平台与Tina5.0开发环境概览 T113-S3/S4是全志科技推出的高性能嵌入式处理器,采用Cortex-A7双核架构,主频可达1.2GHz。这颗芯片有个特别实用的设计——内置了RISC-V协处理器(仅T113-S4支持),在处理特定任务时能显…...
优化labelme中AI Model权重下载体验:手动配置onnx文件的完整指南
1. 为什么需要手动配置onnx权重文件 最近在用labelme做图像标注的朋友可能已经发现了,新版本内置的AI Model功能确实能大幅提升效率。这个功能基于SegmentAnything和EfficientSam等先进模型,可以智能识别图像中的目标区域。但第一次使用时,系…...
