相关的文档10bet官方网站 下载本手册 本手册摘录

MySQL 5.6参考手册/高可用性和可伸缩性

第16章高可用性和可扩展性

数据是当今Web,移动,社交,企业和云应用程序的货币。确保数据始终可用是任何组织的首要任务。停机时间几分可能导致收入和声誉的重大损失。

没有一刀切提供高可用性(HA)的方法。唯一的应用程序属性,业务需求,操作能力和传统基础设施都可以影响HA技术选择。技术只是交付HA的一个元素:人员和流程与技术本身一样重要。

MySQL部署到许多需要可用性和可扩展性的应用程序中。可用性指处理主机故障的能力,以及在必要时从主机故障中恢复的能力,这些故障包括MySQL、操作系统或硬件和维护活动的故障,否则可能导致停机。可伸缩性指的是将数据库和应用程序查询的负载分散到多个MySQL服务器上的能力。

由于每个应用程序具有不同的操作和可用性要求,因此MySQL提供了一系列认证和支持的解决方案,提供了一系列认证和支持的解决方案,提供了适当的高可用性(HA)和可扩展性,以满足服务级别要求。这种解决方案从复制,通过虚拟化和地理上冗余多数据中心解决方案延伸,提供99.999%的正常运行时间。

选择应用程序的正确高可用性解决方案主要取决于:

  • 所需的可用性水平。

  • 部署的应用程序类型。

  • 在您的环境中接受最佳实践。

MySQL支持的主要解决方案包括:

使用第三方解决方案可以提供更多的选项。

用于实现高可用性数据库服务的每个体系结构都根据其提供的正常运行时间级别进行区分。这些架构可以分为三个主要类别:

  • 数据复制。

  • 集群和虚拟化系统。

  • 无共享Geographically-Replicated集群。

如下图所示,这些体系结构中的每一个都逐步提供更高级别的正常运行时间,这必须与每个体系结构可能带来的更高级别的成本和复杂性进行平衡。简单地部署高可用性体系结构并不能保证实际交付HA。事实上,与简单的数据复制解决方案相比,实现和维护不好的无共享集群可以轻松地提供更低的可用性级别。

图16.1权衡:成本和复杂性与可用性

呈现成本和复杂性与可用性的线条图。随着正常运行时间百分比中的“九”的数量增加,成本和复杂性因此从基本复制到群集和虚拟化配置,以跨地理区域复制的共享 - 没有的共享群集。不同种类的组织需要不同的“九”的可用性,从互联网服务提供商和3个九,在线服务,4个九,电子商务,电信和5九种的军事应用。

下表比较了各种MySQL解决方案的HA和可扩展性功能:

表16.1 MySQL HA解决方案的特征比较

要求 MySQL复制 MySQL集群
可用性
平台支持 所有支持MySQL Server(https://www.10bet靠谱mysql.com/support/supportedplatforms/database.html 所有人都支持MySQL群集(https://www.10bet靠谱mysql.com/support/supportedplatforms/cluster.html.
自动IP故障转移 没有 取决于连接器和配置
自动数据库故障转移 没有 是的
自动数据再同步 没有 是的
典型的故障转移时间 用户/脚本依赖 1秒,少
同步复制 不,异步和半同步 是的
共享存储 不,分布式 不,分布式
地理冗余支持 是的 是的,通过MySQL复制
在线更新架构 没有 是的
可伸缩性
节点数量 一个主人,多个奴隶 255.
内置的负载平衡 通过MySQL复制读取 是的,读写
支持操作的工作负载 是的 是的
支持写入密集型工作负载 是的,通过应用程序级分片 是的,通过自动分片
在线扩展(添加节点、重新分区等) 没有 是的