1、 MHA(Master High Availability):MySQL高可用方面是一个相对成熟的解决方案。
原理:MHA Node运行在每台MySQL服务器上,MHA Manager会定时探测集群中的master节点,当master出现故障时,它可以自动将最新数据的slave提升为新的master,然后将所有其他的slave重新指向新的master。整个故障转移过程对应用程序完全透明。
2、 MHA在线切换的大概过程:
(1)检测复制设置和确定当前主服务器
(2)确定新的主服务器
(3)阻塞写入到当前主服务器
(4)等待所有从服务器赶上复制
(5)授予写入到新的主服务器
(6)重新设置从服务器
3、MHA架构
(1)多个master-slave集群
(2)Mysql+MHA+Nginx+Keeplived解决方案