Binlog 的三个业务应用场景

什么是binlog

binlog 是 mysql 的一种二进制日志文件,用来记录数据的变化。mysql 使用 binlog 进行主从复制,如图:

  • 1、客户端向 master 的 mysql sever 写入数据。
  • 2、当数据发生变化时,master 将变更的数据记录写入到二进制文件中,即 binlog。
  • 3、slave 订阅了 master 的 binlog,所以会通过一个 I/O THREAD 与 master 的 DUMP THREAD 进行通信,同步 binlog。
  • 4、I/O THREAD 读取到 binlog 后会吸入到 relay log 中,准备重放。
  • 5、slave 会通过 SQL THREAD 读取 relay log,重放数据的改动并执行相应的改动。

这里有几点需要注意:

This chapter requires login to view full content. You are viewing a preview.

Login to View Full Content

Course Curriculum

3

框架与 I/O:Spring、Netty 与 Web 容器

理解 Spring Boot 自动装配、AOP 与事务原理,掌握 Netty Reactor 模型及 Tomcat 连接处理机制,构建高内聚、易扩展的应用服务层。
4

高性能中间件:消息、缓存与存储

熟练运用 MySQL 索引/事务、Redis 缓存策略、Kafka/RocketMQ 消息可靠性,以及 ZooKeeper 分布式协调,搭建稳定、解耦的分布式数据底座。
6

云原生:容器化、可观测性与工程效能

通过 Docker/K8s 实现弹性部署,集成 Metrics/Logs/Traces 构建可观测体系,推动 DevOps 与自动化,让架构在云上持续交付与进化。