• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • 组复制用例

    通过组复制,您可以通过将系统状态复制到一组服务器来创建具有冗余的容错系统。即使某些服务器随后发生故障,只要不是全部或大多数,该系统仍然可用。根据失败的服务器数量,该组的性能或可伸缩性可能会下降,但是它仍然可用。服务器故障是独立且独立的。它们由组成员资格服务跟踪,该成员资格服务依赖于分布式故障检测器,该故障检测器能够在任何服务器自愿或由于意外停止而离开组时发出信号。有一个分布式恢复过程可确保当服务器加入该组时,它们将自动更新。无需服务器故障转移,并且多主机更新无处不在,可以确保即使单服务器故障也不会阻止更新。总而言之,MySQL Group Replication保证数据库服务是连续可用的。

    重要的是要理解,尽管数据库服务可用,但在服务器崩溃的情况下,必须将与数据库服务连接的那些客户端重定向或故障转移到其他服务器。这不是组复制尝试解决的问题。连接器,负载平衡器,路由器或某种形式的中间件更适合处理此问题。例如,请参见MySQL Router 8.0。

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


    用例场景的示例

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

    • 弹性复制-需要非常流畅的复制基础结构的环境,其中服务器的数量必须动态增加或减少,并且副作用要尽可能少。例如,用于云的数据库服务。
    • 高度可用的分片-分片是实现写入横向扩展的一种流行方法。使用MySQL组复制来实现高度可用的分片,其中每个分片都映射到一个复制组。
    • 主从复制的替代方法-在某些情况下,使用单个主服务器使其成为单个竞争点。在某些情况下,写给整个小组可能会更具扩展性。
    • 自治系统-另外,您可以纯粹为复制协议中内置的自动化功能部署MySQL组复制(在本章和之前的章节中已经介绍过)。