我有一个在两个远程位置运行的数据库。 (A& B)服务器在一个位置(A)本地可用。但是,第二个位置(B)通过互联网接收数据库。
在位置A停止互联网,位置B失去与数据库的连接。
在某种程度上可以将另一台服务器放在位置B,并且具有连续复制和以下条件: - 如果互联网在位置A工作,则用户仅访问位置A服务器。 用户可以访问位置B处可用的服务器,直到互联网在位置A处于关闭状态。一旦连接恢复,两个数据库都可以复制。如果有任何不匹配/重复,那么位置A将被视为主数据并且更改将被覆盖?
我想知道这样的解决方案是否可行以及我可以通过此设置遇到的问题?
答案 0 :(得分:0)
MariaDB 10+提供具有多个主设置的Galera Cluster。基本上所有服务器(在您的情况下为3)将是主服务器,而将1服务器的数据传递给其他服务器。如果一个发生故障,其他服务器将继续运行。服务器恢复后,它会同步丢失丢失的数据。
这是数据库级别
对于连接级别,您需要一个"负载均衡器"在上行机器之间分配负载或检测下行机器并指向其他机器的设备类型。对于mysql类型的服务器很难找到它们。但是......如果你的问题是可行的