20.1.2 组复制使用案例

组复制通过将系统状态复制到一组服务器来创建具有冗余的容错系统。即使随后有一些服务器出现故障,只要不是所有服务器或大部分服务器都故障,系统仍然可用。根据故障服务器的数量,组的性能或可扩展性可能会降低,但系统仍然可用。服务器故障是独立且隔离的,它们由组成员服务跟踪。这个服务依赖于一个分布式故障检测器,该检测器能够在任何服务器自愿或由于意外停机而离开组时发出信号。存在一个分布式恢复过程,以确保当服务器加入组时,它们能够自动更新到最新状态。无需进行服务器故障转移,而且多源更新的特性确保了即使在单个服务器出现故障的情况下,更新也不会被阻塞。总之,MySQL组复制保证了数据库服务的持续可用性。

虽然MySQL组复制能够确保数据库服务的持续可用性,并处理服务器之间的数据复制和一致性问题,但它并不直接处理客户端在服务器故障时的重定向或故障转移。当某个服务器意外退出时,那些连接到该服务器的客户端需要被转移到其他健康的服务器上。为了实现这一点,需要使用其他工具或组件,如连接器、负载均衡器、路由器或中间件,比如MySQL Router 8.0,来帮助管理客户端连接并处理故障转移逻辑。

总之,MySQL 组复制提供了高可用性、高弹性和高可靠性的 MySQL 服务。

Tip

可以使用InnoDB集群。InnoDB集群允许您在MySQL Shell中轻松管理一组MySQL服务器实例。InnoDB集群在编程环境中封装了MySQL组复制,使您能够轻松部署MySQL实例集群以实现高可用性。此外,InnoDB集群与MySQL Router无缝集成,使您的应用程序能够连接到集群,而无需编写自己的故障转移过程。然而,对于不需要高可用性的类似用例,您可以使用InnoDB副本集

以下示例是组复制的典型用例。

弹性复制 - 需要非常灵活的复制基础设施的环境,其中服务器的数量必须动态增长或减少,且尽可能减少副作用。例如,为云提供的数据库服务。

高可用分片 - 分片是一种流行的实现写入扩展的方法。使用MySQL组复制来实现高可用分片,其中每个分片映射到一个复制组。

异步源-副本复制的替代方案 - 在某些情况下,使用单个源服务器会使其成为单点争用。在某些情况下,向整个组写入可能更具可扩展性。

自主系统 - 此外,您还可以仅为了内置于复制协议(已在本文和上一章中描述)中的自动化而部署MySQL组复制。

 

  • 10
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值