我们正在构建一个包含两个应用服务器和两个mysql数据库服务器的生产设置。对于HA功能,我想在2个数据库服务器之间设置复制。
我想解决的一些问题是:
1.拥有Master-Slave设置与Master-Master设置的优缺点是什么?在什么条件下你选择一个而不是另一个?
2.如果发生故障,设置为a)易于执行故障转移和恢复,b)更可靠(无数据丢失)?
据我所知,Mysql提供了二进制复制,但我必须使用第三方工具,如MMM(多主复制管理器),我的Master-Master设置,以及Virtual IP来处理故障转移。
我在dev.mysql.com上找到的大多数文档都与设置复制有关,并没有真正谈论如何在Master-Slave与Master-Master设置之间做出设计决策的优缺点。
谢谢。
答案 0 :(得分:1)
我目前有一堆奴隶设置了二进制复制,有一个主服务器和许多从服务器。设置(专业)要容易一些,但如果主人失败则需要更多干预。如果设置正确,Master-master将重建自己。主从意味着dba必须创建转储,将其移回主服务器,重建并重新启动MySql。颈部疼痛。
如果正确实施,基本上Master-Master会更健壮。执行错误,你可能在热水中。在小型环境中,在主从上进行手动重建的开销可能很小,甚至不能保证更复杂的主 - 主设置。