首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么有两种方法来更新“二进制日志”(1.主Binlog转储2.主数据库)

为什么有两种方法来更新“二进制日志”(1.主Binlog转储2.主数据库)
EN

Stack Overflow用户
提问于 2021-10-13 03:29:49
回答 1查看 126关注 0票数 1

我在谷歌图像中看到了一个快照

我有一个问题,为什么有两种更新Binary log的方法

  1. 主Binlog转储
  2. 主数据库。

如果没有Binlog转储来更新二进制日志,主数据库也可以在更新后更新Binlog。

我想这可以增加中继日志读取内容的高级。但是,为什么主数据库应该再次更新Binlog呢?要确认吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-10-13 03:52:56

这张图很混乱。有一件事正在发生,只是用两种方式来描述。下面是正在发生的事情。(根据当前的MySQL文档的说法,我更喜欢使用“来源”和“复制”这两个词。)

  1. 源实例对其数据库执行事务。
  2. 源实例将事务的事件写入其二进制日志。
  3. 副本实例的IO线程连接到源实例。
  4. 副本的IO线程运行管理命令binlog dump。这将等待源实例将事件写入其二进制日志,并在事件发生时立即下载。
  5. 副本的IO线程将下载的事件写入副本实例的中继日志。
  6. 副本的SQL线程等待事件被写入中继日志。
  7. 副本的SQL线程从中继日志中读取,并在副本的数据库中执行它们。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69549400

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档