AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 823621
Accepted
Frank Martin
Frank Martin
Asked: 2017-01-02 13:26:06 +0800 CST2017-01-02 13:26:06 +0800 CST 2017-01-02 13:26:06 +0800 CST

主从半循环复制在 MySQL 中不起作用

  • 772

我不知道如何描述它,所以我称它为半圆。这就是我正在做的事情。

服务器 A
服务器 B = 这是服务器 A 的从服务器
服务器 C = 这是服务器 B 的从服务器

当我在服务器 A 上更新某些内容时,它会反映在服务器 B 上。但同样的更改不会反映在服务器 C 上。

只有当我在服务器 B 上更新某些内容时,更改才会反映在服务器 C 上。

我如何做到这一点,以便在服务器 A 上所做的任何更改都会到达服务器 B(它已经在工作),然后它会到达服务器 C?

编辑
经过调查,我发现当我在服务器 A 上进行一些更改时,它的日志文件位置会发生变化。但是当这些更改反映在服务器 B 上时,服务器 B 日志文件的位置不会改变。正是由于这个原因,服务器 C 不知道服务器 B 上是否有任何更改,除非我明确更改服务器 B 上的某些内容(插入、更新、删除)。

那么有没有办法告诉 MySQL 在 Slave 接收来自 Master 的更新时增加日志文件位置?

mysql mysql-replication master-slave
  • 1 1 个回答
  • 192 Views

1 个回答

  • Voted
  1. Best Answer
    2ps
    2017-01-02T14:02:01+08:002017-01-02T14:02:01+08:00

    仅供参考——这通常称为复制中继链。为了打开它,您必须确保在服务器 B 上设置了以下设置:

    log_bin
    log_slave_updates
    

    这将告诉服务器 B 在收到来自 A 的更新时更新其日志位置。可以在此处找到相关文档(重点添加):

    通常,从属服务器不会将从主服务器接收到的任何更新写入其自己的二进制日志。此选项使从服务器将其 SQL 线程执行的更新写入其自己的二进制日志。要使此选项生效,还必须使用--log-bin选项启动从属服务器以启用二进制日志记录。--log-slave-updates 用于链接复制服务器时。例如,您可能希望使用这种安排设置复制服务器

    A -> B -> C

    这里,A 充当从 B 的主,B 充当从 C 的主。为此,B 必须既是主又是从。您必须使用--log-bin启动 A 和 B以启用二进制日志记录,并使用--log-slave-updates选项启动 B 以便从 A 接收的更新由 B 记录到其二进制日志中。

    • 3

相关问题

  • 开源与专有关系 db mgt 系统的优缺点是什么?

  • 在 solaris 10 上为 mysql 设置 max_allowed_pa​​cket

  • 如何移动 MySQL 的数据目录?

  • 通过 VPN 连接什么是远程服务器 IP?

  • mysql崩溃

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve