暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

MySQL数据库组复制用例

Tonyhacks 2024-03-09
95

组复制用例

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

重要的是要了解,尽管数据库服务可用,但如果服务器意外退出,则连接到该数据库的客户端必须重定向或故障转移到其他服务器。这不是组复制试图解决的问题。连接器、负载均衡器、路由器或某种形式的中间件更适合处理这个问题。例如,请参阅MySQL Router 8.0

综上所述,MySQL组复制提供了高可用、高弹性、可靠的MySQL服务。

提示

要部署多个 MySQL 实例,您可以使用InnoDB Cluster ,它使您能够在MySQL Shell中轻松管理一组 MySQL 服务器实例。InnoDB Cluster 将 MySQL 组复制包装在编程环境中,使您能够轻松部署 MySQL 实例集群以实现高可用性。此外,InnoDB Cluster 与MySQL Router无缝对接,使您的应用程序无需编写自己的故障转移过程即可连接到集群。但是,对于不需要高可用性的类似用例,您可以使用InnoDB ReplicaSet可在此处找到 MySQL Shell 的安装说明。

示例用例

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

  • 弹性复制- 需要非常流畅的复制基础设施的环境,其中服务器数量必须动态增长或收缩,并且副作用尽可能少。例如,云数据库服务。
  • 高可用分片- 分片是实现写入横向扩展的流行方法。使用 MySQL 组复制来实现高可用分片,其中每个分片映射到一个复制组。
  • 异步源-副本复制的替代方案- 在某些情况下,使用单个源服务器会使其成为单点争用。在某些情况下,向整个组写入数据可能更具扩展性。
  • 自主系统- 此外,您可以纯粹为了内置于复制协议中的自动化而部署 MySQL 组复制(已在本章和前面的章节中描述)。
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

文章被以下合辑收录

评论