【问题标题】:MySQL Multi-Master Replication multi locationMySQL 多主复制多位置
【发布时间】:2017-09-09 11:29:50
【问题描述】:

我有一个在两个远程位置运行的数据库。 (A & B) 服务器在一个位置 (A) 本地可用。但是,第二个位置 (B) 通过 Internet 访问数据库。

如果位置 A 的互联网出现故障,位置 B 将失去与数据库的连接。

是否可以通过连续复制和以下条件将另一台服务器放置在位置 B:- 如果 Internet 在位置 A 工作,则用户仅访问位置 A 服务器。 用户可以访问位置 B 的可用服务器,直到位置 A 的 Internet 关闭。一旦连接恢复,两个数据库都可以复制。如果有任何不匹配/重复,那么位置 A 将被视为主位置并且更改将被覆盖?

我想知道这样的解决方案是否可行,以及我在此设置中可能面临的问题?

【问题讨论】:

  • MySQL 中没有机制可以考虑一个主数据比另一个“更好”。冲突解决是手动的,当检测到冲突时复制停止。另请参阅CAP Theorem

标签: mysql multi-master-replication


【解决方案1】:

MariaDB 10+ 提供了具有多个主设置的 Galera 集群。基本上所有服务器(在您的情况下为 3)都将是主服务器,而 1 台服务器的数据将发送给其他服务器。如果其中一台出现故障,其他服务器将继续运行。服务器恢复后,它会同步回丢失的数据。

这是数据库级别

对于连接级别,您需要一种“负载平衡器”类型的设备,它可以在运行的机器之间分配负载或检测到停机的机器并将其定向到其他机器。 mysql 类型的服务器很难找到它们。但是..如果那是你的问题是可行的

【讨论】:

    猜你喜欢
    • 2013-05-02
    • 1970-01-01
    • 2011-11-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多