gpt4 book ai didi

mysql 故障转移 : how to choose slave as new master?

转载 作者:可可西里 更新时间:2023-11-01 07:07:48 29 4
gpt4 key购买 nike

我是 mysql 新手。

当涉及到故障转移时,应该将哪个 slave 提升为新的 master?

比如A是master,B、C是slave,A对B、C做异步复制。

在某个时间点,B 从 A 收到的数据多于 C,A 崩溃了。

如果我们将 C 提升为新的 master,并将 B 的 master 更改为 C,那么 B 会发生什么?它截断其数据以匹配 C?

显然,B是最佳的新master候选人,但我的问题是,如何确定这个事实?

最佳答案

来自MySQL documentation ,有两种方法可以建立主从架构。传统方式使用日志文件复制事务,新版本(5.6+)使用 GTID(全局事务标识符)。

如果您选择使用 GTID 进行故障转移处理,您将使用 mysqlfailover效用。该实用程序以数据库管理员定义的三种方式之一处理 master 故障:

  • 自动(默认):在首选奴隶列表中进行搜索以成为主人,如果没有可用的另一个奴隶被选择。选定的从站首先成为所有其他从站的从站,并将其他从站的所有更改复制到它,这样新的主站将尽可能是最新的版本。
  • 选择:与上面相同,除了如果列表中没有可用的从站,它会返回一个错误并完成(无故障转移)
  • 失败:没有发生故障转移 mysqlfailover 将只监视数据库并在发生故障时返回错误。

传统方式要求您实现自己的脚本来管理数据库并且更好地解释here .

关于mysql 故障转移 : how to choose slave as new master?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43960577/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com