在开始编写Web应用程序之前,我正在testing一些基础结构选项。 我想有两个独立的MySQL数据库服务器在不同的物理位置,但是如果其中一个出现故障,我希望能够以最小的数据丢失故障转移到另一个服务器。
从我所看到的,MySQL只支持一个“主”服务器和多个“从”服务器。 我假设这个设置背后的原因是在主服务器上执行写操作,并尝试在从服务器上执行“读取”操作。
有没有办法设置它,以便我有能力故障转移,并写入从服务器,如果主服务器宕机?
要记住我的testing – 我有两个来自不同供应商的VPS,每个都有一个外部IP。
结帐加莱拉 。 他们说它通过广域网或云进行复制。 Galera最近在MySQL界引起了很多关注,但它不是一个成熟的产品,所以你需要仔细评估你的奖励/风险。
MySQL 切换主服务器在故障切换过程中参考文档描述了如何在主/从复制scheme中实现故障切换, 多主服务器和循环复制文档描述了其他几种复制scheme,这些复制scheme可能比主从复制故障切换更适合您的要求。
MySQL只支持一个“主”服务器和多个“从”服务器
不,甚至放弃ndb集群的选项,你可以有多个主人和多个奴隶。 主 – 主复制可以很好地满足您的要求。 看看mysqlproxy / HAproxy的工具来处理失败的节点。
在主/从复制发生故障的情况下,可以对从节点进行脚本升级 – 但除非您有足够的理由采取这种方法,否则我build议您将其清除。
我想推荐以下内容:
四(4)件高品质的组合
这个问题有趣的是,这是我第三次回答这样的问题。 我实际上在DBA StackExchange中解决了这个问题3次(2答案+评论在Meta中的答案):
https://dba.stackexchange.com/questions/5153/mysql-replication-1-slave-multiple-masters/5174#5174