MySQL下bin-log的三种模式(ROW、Statement、Mixed)

C++cgal库配置+VS2017 Cgal几何图形库在VS2017上的下载、安装与配置。想要一口气下载完所有安装配件的,可以去文章末尾的链接。httpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttps。 阅读详情

MySQL的bin-log日志备份有三种模式,分别是:ROW、Statement、Mixed

一、Row
基于行的复制(row-based replication,RBR)

日志中会记录成每一行数据被修改成的形式,然后在slave端再对相同的数据进行修改,只记录要修改的数据,只有value,不会有sql多表关联的情况。

优点:在row模式下,bin-log中可以不记录执行的sql语句的上下文相关信息,仅仅需要记录哪一条记录被修改了,修改成什么信样了,所以row的日志内容会非常清楚的记录下每一行数据修改的细节,非常容易理解。而且不会出现在某些特定情况下的存储过程和function,以及trigger的调用和处罚无法被正确问题。

缺点:在row模式下,所有执行的语句当记录到日志中的时候,都将以每行记录的修改来记录,这样可能会产生大量的日志内容。

二、Statement
基于SQL语句的复制(statement-based replication,SBR)

每一条会修改数据的sql都会记录到master的binlog中,slave在的时候sql进程会解析成和原来master端相同的sql再执行。

优点:在Statement模式下首先就是解决了row模式下的缺点,不需要记录记录每一行日志的变化,减少了bin-log日志量,节省了I/O以及存储资源,提高性能。因为它们只需要激励在master上所执行的语句的细节以及执行语句时候的上下文信息。

缺点:在Statement模式下,由于它记录的执行语句,所以,为了让这些语句在slave端也能正确执行,那么它还必须记录每条语句在执行的时候的一些相关信息,也就是上下文信息,以保证所有语句在slave端被执行的时候能够得到和在master端执行时候的结果。另外,由于MySQL现在发展较快,很多的新功能不断的加入,使MySQL的遇到了不小的挑战,自然的时候涉及到越复杂的内容,bug也就越容易出现。在Statement中,目前已经发现不少情况会造成MySQL的出现问题,主要是修改数据的时候使用了某些特定的函数或者功能的时候会出现。

三、Mixed
混合模式复制(mixed-based replication,MBR)

从官方文档中看到,之前的MySQL一直都只有基于Statement的模式,知道5.1.5版本的MySQL才开始支持row模式。从5.0开始,MySQL的已经解决了大量老版本中出现的无法正确的问题。但是由于存储过程的出现,给MySQL replication又带来了更大的挑战。另外,看到官方文档说,从5.1.8版本开始,MySQL提供了除Statement和row之外的第三种模式:mixed,实际上就是前两种模式的结合。在mixed模式下,MySQL会根据执行的每一条具体的sql语句来区分对待记录的日志形式,也就是在Statement和row之间选择一种。新版本中的Statement还是和以前一样,仅仅记录执行的语句。而新版本的MySQL中对row模式也做了优化,并不是所有的修改都会以row模式来记录,比如遇到表结构变更的时候就会以Statement模式来记录,如果sql语句确实是update或者delete等修改数据的语句,那么还是会记录所有行的变更。
————————————————
版权声明:本文为优快云博主「qq_489366879」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.youkuaiyun.com/qq_32352565/article/details/77506618

(11-3-03)多任务与元强化学习:综合实战:基于元强化学习的迷宫导航系统(3) 本文介绍了策略网络隐空间可视化的实现方法及其在强化学习中的应用。通过设计visualize_latent_space函数,使用t-SNE算法将高维隐空间特征降维至二维进行可视化,直观展示策略网络在不同任务中的特征分布。文章详细阐述了实现流程:状态收集、t-SNE降维和可视化绘图,并提供了完整的Python代码示例。实验结果表明,该方法能有效分析策略网络的学习过程与适应能力,为优化模型提供重要依据。同时,文章还介绍了主程序的完整流程,包括环境初始化、元智能体训练与评估、学习策略比较等环节,最后对实验结果进行可 阅读详情

相关推荐

先进封装技术 Part03---重布线层(RDL)的科普

RDL是一种在芯片封装过程中用于重新分布电气连接的技术。它通过在芯片表面或中介层上形成额外的布线层,重新分配芯片的I/O(输入/输出)位置,以适应不同的封装需求和提高电气连接的灵活性。

阿拉伯梳子的专栏 4703

MySQL中的日志“binlog”的三种格式这么好玩

MySQL 中的日志比较重要的有 binlog(归档日志)、redo log(重做日志)以及 undo log,那么跟我们本文相关的主要是 binlog,另外两个日志松哥将来有空了再和大家详细介绍。 1. binlog binlog 我们中文一般称作归档日志,如果大家看过松哥之前发的 MySQL 主从搭建,应该对这个日志有印象,当我们搭建 MySQL 主 从 的时候就离不开 binlog(传送门:MySQL8 主从复制踩坑指南)。 binlog 是 MySQL Server 层 的日志,而不是存储引擎

莫得感情的韭菜 2939

tiktok算法协议研究

经过上述分析,可以确定目标字符串来源于一段 JSON 数据,而这段 JSON 数据来自于一个经过加密的本地文件。对字符串 "sdi_v2" 进行 SHA-1 计算,得到 20 字节的结果;将第一步得到的数据进行MD5计算,生成16字节的结果;将第二步的结果转换为十六进制字符串,从而得到 32 字节的密钥。写这种算法分析的帖子真的是太无聊了,就先分析到这里吧,后续有机会再来谈下被加密的本地文件是怎么来的!!自我感觉TT的算法并不难,就是量太大了,所以我想问问有没有感兴趣的朋友来一起分析,欢迎联系。

2503_90751938的博客 2575

MySQL中的日志“binlog”的三种格式

MySQL 中的日志比较重要的有 binlog(归档日志)、redo log(重做日志)以及 undo log,那么跟我们本文相关的主要是 binlog,另外两个日志松哥将来有空了再和大家详细介绍。

meser88的博客 9956

利用pytorch长短期记忆网络LSTM实现股票预测分析

长短时记忆网络(Long Short Term Memory Network, LSTM),是一种改进之后的循环神经网络,可以解决RNN无法处理长距离的依赖的问题,目前比较流行。LSTM主要就是加入了三个门控:第一个开关遗忘门:负责控制继续保存长期状态c;第二个开关输入门:负责控制把即时状态输入到长期状态c;第三个开关输出门:负责控制是否把长期状态c作为当前的LSTM的输出。

优快云 精品推荐 1万+

雷达工程师面试题目

详细描述项目背景、目标、你的具体职责和贡献,分析在项目实施过程中遇到的主要技术难题及解决方案,总结项目取得的成果和经验教训。

道亦无名 738

MySQL Binlog 日志的三种格式详解

MySQL Binlog 日志的三种格式详解

一起coding,一起嗨。 2338

STM32F767 GPIO跑马灯工程从零搭建指南

嵌入式开发中,基于HAL库的STM32工程初始化是确保外设可靠运行的基础环节。其核心在于理解芯片时钟树配置原理、GPIO工作模式与硬件电气特性之间的映射关系。正确启用RCC时钟源、合理分配AHB/APB总线分频系数,可保障系统主频稳定;而精准设置推挽输出、上下拉状态及引脚速度,则直接影响LED等基础外设的驱动可靠性。结合STM32CubeMX图形化配置工具,开发者能将寄存器级操作抽象为可视化流程,显著提升工程可追溯性与复用性。本文以STM32F767IGT6和阿波罗开发板为载体,详解从Repository固

weixin_42453228的博客 61

mysql binlog的三种模式

MySQL的binlog有三种模式,分别是statement模式、row模式和mixed模式。这些模式决定了MySQL如何记录binlog中的数据更改。

fjaljda的博客 799

淋巴结病理数字玻片读取与处理代码

Whole-slide images are generally stored in a multi-resolution pyramid structure. 首先安装openslide模块 pip install openslide-python import os.path as osp import openslide from pathlib import Path...

猫头军师兵书 1276

管理类联考——逻辑——真题篇——按知识分类——综合推理

29、某部门抽检了肉制品、白酒、乳制品、干果、蔬菜、水产品、饮料等﹖类商品共521种样品,发现其中合格样品515种,不合格样品6种。已知: (1)蔬菜、白酒中有2种不合格样品。 (2)肉制品、白酒、蔬菜、水产品中有5种不合格样品。 (3)蔬菜、乳制品、干果中有3种不合格样品。 根据上述信息,可以得出以下哪项? A. 乳制品中没有不合格样品。 B. 肉制品中没有不合格样品。 C. 蔬菜中没有不合格样品。 D. 白酒中没有不合格样品。 E. 水产品中没有不合格样品。 31~32题基于以下题干: 某中学举行田径运

stqer的博客 2022

MySQL binlog的3种格式对比(statement,row,mixed)

binlog主要用于主从复制和数据恢复,本文就一起来看下其内容都有哪些模式,以及这些模式都有哪些有点和缺点。

wang0907的博客 5327

【项目实战】分布式日志系统 之 Exactly-once 语义:确保数据处理的精确性

在分布式系统的数据传输与处理中,是一种核心可靠性保障,其目标是确保数据“仅被处理一次”——既不重复(避免多次处理),也不遗漏(避免未处理)。与,二者共同保障数据处理的精确性。Exactly-once 语义是分布式系统中数据可靠性的高级目标,其核心通过“幂等设计”(解决重复问题)和“分布式事务”(解决原子性问题)实现。在实际应用中,常结合 At-Least-Once 语义与幂等性,或通过事务 API 与唯一 ID 去重的组合,平衡可靠性与系统性能。

奶爸的编程之路,也就一周冷个三天 167

MySQL的bin-log日志备份有三种模式,分别是:ROW、Statement、Mixed

原文来自:https://my.oschina.net/HeAlvin/blog/647331 MySQL的bin-log日志备份有三种模式,分别是:ROW、Statement、Mixed 一、Row 基于行的复制(row-based replication,RBR) 日志中会记录成每一行数据被修改成的形式,然后在slave端再对相同的数据进行修改,只记录要修改的数据,只有value,不会有sql...

qq_40754390的博客 382

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

mysql row statement_MySQL下bin-log的三种模式(ROW、Statement、Mixed)

MySQL的bin-log日志备份有三种模式,分别是:ROW、Statement、Mixed一、Row基于行的复制(row-based replication,RBR)日志中会记录成每一行数据被修改成的形式,然后在slave端再对相同的数据进行修改,只记录要修改的数据,只有value,不会有sql多表关联的情况。优点:在row模式下,bin-log中可以不记录执行的sql语句的上下文相关信息,仅仅...

weixin_31002075的博客 341

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

mysql 混合模式_MySQL下bin-log的三种模式(ROW、Statement、Mixed)

MySQL的bin-log日志备份有三种模式,分别是:ROW、Statement、Mixed一、Row基于行的复制(row-based replication,RBR)日志中会记录成每一行数据被修改成的形式,然后在slave端再对相同的数据进行修改,只记录要修改的数据,只有value,不会有sql多表关联的情况。优点:在row模式下,bin-log中可以不记录执行的sql语句的上下文相关信息,仅仅...

weixin_39818691的博客 302

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

mysql bin-log三种模式

MySQL的bin-log日志备份有三种模式,分别是:ROW、Statement、Mixed 一、Row 日志会记录成每一行数据被修改成的形式,然后再slave端再对相同的数据进行修改,只记录要修改的数据,只有value,不会有sql多表关联的情况。 优点:在row模式下,bin-log中可以不记录执行的sql语句的上下文相关信息,仅仅需要记录哪一条记录被修改了,修改成什么信样了,所以row...

weixin_30648963的博客 77

mysql-binlog(一)介绍

binlog是二进制日志文件,用于记录mysql的数据变更,数据在恢复的时候binlog日志能起到很大的作用,mysql的主从复制就是利用的binlog原理。 1、登录mysql之后使用下面的命令查看是否开启binlog show variables like 'log_%'; ON为打开,OFF为关闭,OFF状态下打开见下文 2、编辑配置文件 vi /etc/my.cnf,加上以下内容 server_id=2 log_bin = mysql-bin binlog_format = ROW

w_t_y_y的博客 6969

【mysql】-- Mysql的undo log、redo log、bin log日志

这里写自定义目录标题一、mysql的日志文件二、undo log日志--InnoDB特有2.1、undo log日志介绍2.2、undo log原理2.3、insert操作的内部机制2.4、delete/update操作的内部机制三、redo log日志--InnoDB特有3.1、redo log文件存在意义3.2、redo log原理3.3、write ahead Log策略3.4、 redolog的覆盖和innodb_log_buffer刷入磁盘参数配置3.5、redolog的数据恢复策略四、bin l

寻梦友的博客 960

MySQL的binlog_format (Mixed,Statement,Row)

转自:https://blog.youkuaiyun.com/heizistudio/article/details/8616997 MySQL 5.5 中对于二进制日志 (binlog) 有 3 种不同的格式可选:Mixed,Statement,Row,默认格式是 Statement。总结一下这三种格式日志的优缺点。 MySQL Replication 复制可以是基于一条语句 (Statement ...

XiaoXiao_RenHe的专栏 1386

mysql uuid_你该了解的MySQL集群知识

上篇我们搭建了MySQL的主从集群,现在我们了解下相关知识。bin_log 介绍bin_log 即 二进制日志,它记录了数据库的所有操作,并记录在系统磁盘中。它可以用来查看数据库的变更历史,数据库增量备份和回复,MySQL复制(主从复制)。bin_log 的格式statement (statement-based replication, SBR) 基于SQL语句的复制优点①基于段的模式,binl...

weixin_39687192的博客 151

mysql bin-log详解

mysql bin-log作用 Mysql的binlog日志作用是用来记录mysql内部增删改查等对mysql数据库有更新的内容的记录(对数据库的改动),对数据库的查询select或show等不会被binlog日志记录;主要用于数据库的主从复制以及增量恢复。 mysql的binlog日志必须打开log-bin功能才能生存binlog日志 -rw-rw---- 1 mysql mysql 669 8月 10 21:29 mysql-bin.000001 -rw-rw---- 1 m...

weixin_42548604的博客 558

bin log日志格式

MySQL提供了三种二进制日志格式:statement记录SQL语句,节省空间但可能导致主从不一致;row记录行数据变更,保证一致性但日志量大;mixed混合模式,默认用statement格式,在必要时自动切换为row格式,兼具空间效率和数据一致性优势。这三种格式各有特点,mixed模式在性能和可靠性间取得了平衡。

qq_21277357的博客 80
上一篇: 进程和线程、协程的区别
下一篇: SpringMVC 类内部的RequestMapping注解能否被继承?
fastrunner2003
博客等级 码龄24年 36粉丝 58原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值