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

MySQL二进制日志格式有哪几种

目录

      • 一、二进制日志格式类型
        • 1. **STATEMENT 格式(SBR: Statement-Based Replication)**
        • 2. **ROW 格式(RBR: Row-Based Replication)**
        • 3. **MIXED 格式(混合模式)**
      • 二、二进制日志事件详解
      • 三、如何选择二进制日志格式?
      • 四、配置与查看二进制日志格式
      • 五、注意事项

在 MySQL 中,二进制日志(Binary Log)的格式决定了主库如何记录数据的变更事件,并直接影响复制的行为和一致性。MySQL 支持三种二进制日志格式:STATEMENTROWMIXED。以下是每种格式的详细说明及其事务的事件组成。


一、二进制日志格式类型

1. STATEMENT 格式(SBR: Statement-Based Replication)
  • 原理:记录实际执行的 SQL 语句(如 INSERTUPDATEDELETE 等),从库通过重放这些 SQL 语句实现数据同步。

  • 事务组成事件

    • Gtid_log_event(若启用 GTID):全局事务标识符。
    • Query_event:记录 BEGIN 语句,标识事务开始。
    • Query_event:记录具体的 DML 或 DDL 语句(如 UPDATE users SET name='Alice' WHERE id=1;)。
    • Xid_event:记录事务提交(COMMIT)。
  • 示例

    # 主库执行的事务
    BEGIN;
    UPDATE users SET name='Alice' WHERE id=1;
    COMMIT

相关文章:

  • HTML5 Canvas 的俄罗斯方块游戏开发实践
  • 【NTP系列】ntp同步原理
  • 下面从源码的角度看Spring Boot设计模式
  • python-leetcode 56.电话号码的字母组合
  • 在Electron中实现实时下载进度显示的完整指南
  • 深入解析 SQL 事务:确保数据一致性的关键
  • 程序化广告行业(27/89):供应商筛选、比稿流程与广告透明化要点
  • android开发:组件事件汇总
  • 停车场停车位数据集,标注停车位上是否有车,平均正确识别率99.5%,支持yolov5-11, coco json,darknet,xml格式标注
  • Centos7更换仓库源为阿里云镜像
  • 使用 libevent 构建高性能网络应用
  • 点击事件+长按实现
  • 如何在ubuntu上安装zookeeper
  • 3DXML 与 SOLIDWORKS 格式转换:技术协同及迪威模型方案
  • 在 Vue 项目中引入静态图片有多种方式
  • 基于PyQt5与Open3D的轻量化BIM工具开发指南(上)‌
  • 从 0 到 1 掌握鸿蒙 AudioRenderer 音频渲染:我的自学笔记与踩坑实录(API 14)
  • npm 报错 unable to resolve dependency tree
  • C++学习之云盘项目nginx
  • C++继承 ---- 继承是面向对象三大特性之一【好处:可以减少重复的代码】
  • 银行积分大幅贬值遭质疑,涉及工行、中行、农行等
  • 大环线呼之欲出,“金三角”跑起来了
  • 刘晓庆被实名举报涉嫌偷税漏税,税务部门启动调查
  • 香港特区立法会通过条例草案便利外地公司迁册来港
  • 竞彩湃|霍芬海姆看到保级曙光,AC米兰专注于意大利杯
  • 比特币价格时隔三个月再度站上10万美元