我们使用机器学习技术将英文博客翻译为简体中文。您可以点击导航栏中的“中文(简体)”切换到英文版本。
使用多可用区数据库集群在 Amazon RDS for MySQL 上实现高性能和高可用性的最佳策略
在
多可用区数据库集群部署最适合需要额外读取容量的应用程序工作负载,或者那些对交易延迟敏感且必须具有高可用性的工作负载。除此之外,多可用区数据库集群部署还包括新功能,例如
如果您目前正在计划对运行 MySQL 5.7.x 的现有
在这篇文章中,我们将探讨将亚马逊 RDS for MySQL 5.7.x 升级到 MySQL 8.0.x 时的关键注意事项。我们还将讨论如何为现有的 RDS for MySQL 工作负载采用多可用区数据库集群部署,以及与迁移相关的最佳实践。
多可用区数据库集群中引入的主要新功能
对于读取密集型工作负载,多可用区数据库集群部署还允许
适用于 Amazon RDS for MySQL 的多可用区数据库集群部署支持
此外,在多可用区数据库集群部署中,默认情况下,
迁移到多可用区数据库集群部署时的关键注意事项
在计划使用 RDS 多可用区数据库集群时,在准备迁移时需要记住几点。首先要记住的是引擎版本。带有适用于 MySQL 的亚马逊 RDS 的多可用区数据库集群需要适用于 MyS
要记住的另一件事是多可用区数据库集群部署所支持的数据库实例类。目前,多可用区数据库集群支持 “d” 类型的实例类,例如 db.m5d、db.m6gd、db.r5d、db.r6gd 和 db.x2iedn。有关最新注意事项,请参阅
与 MySQL 5.7 相比,MySQL 8.0 引入了多项
从现有单可用区或多可用区实例迁移到多可用区数据库集群部署的选项
现在,您的数据库实例采用了支持的多可用区数据库集群版本和实例类别,让我们回顾一下从现有 RDS for MySQL 单可用区或 RDS for MySQL 多可用区实例部署迁移的迁移选项。
使用停机时间最少的只读副本
就工作量和最大限度地减少停机时间而言,作为最方便的选择之一,您可以 从现有的单
对于这种迁移方法,作为先决条件,请在源数据库实例上将
将现有 RDS
gtid-mod
e 和 enforce
_gtid_consistency 参数配置为 ON
。
icalag
CloudWatch 指标监控复制延迟,并使用
准备就绪后,停止将任何事务写入源数据库实例,然后等待对只读副本进行所有更新。您可以 使用 Repl
ica
Lag 指标
下图说明了此选项的架构。
使用亚马逊 RDS 快照
您还可以使用 Amazon RDS 快照和还原选项迁移到多可用区数据库集群选项。由于您已将 Amazon RDS for MySQL 引擎版本升级为使用多可用区数据库集群支持的引擎版本和实例之一,因此您可以将现有的单可用区数据库实例部署或多可用区数据库实例部署的快照恢复到多可用区数据库集群。
您可以
恢复操作可能需要时间,具体取决于数据库的大小。作为可选步骤,如果您的工作负载无法容忍更长的停机时间,则可以将
SHOW MASTER STA
TUS 命令以获取二进制日志位置,您可以从中设置复制。
下图说明了此选项的架构。
使用 mysqldump 和二进制日志复制
--master-data=2
进行一致备份时的二进制日志位置,如以下示例代码所示:
二进制日志复制将允许连续变更数据捕获 (CDC),当副本延迟接近零时,您可以执行切换。有关设置此复制的分步说明,请参阅在
你也可以使用
下图显示了此选项的架构。
结论
当您决定将现有 RDS for MySQL 资源升级到 Amazon RDS for MySQL 8.0.x 上的最新版本时,您也可以使用 RDS 多可用区数据库集群部署选项。此选项支持需要更多读取容量和一致交易延迟的工作负载,同时提供高可用性和耐久性。在这篇文章中,我们讨论了多可用区数据库集群的优势和新的增强功能,以及可能的最小停机时间迁移方法。
通过访问 Amaz
作者简介
Shagun Arora
是亚马逊网络服务的数据库专家解决方案架构师。她与客户合作,在 亚马逊云科技 云中设计可扩展、高度可用和安全的解决方案。
Vijay Karumajji
是亚马逊网络服务的首席数据库解决方案架构师。他与我们的客户合作,为数据库项目提供指导和技术援助,帮助他们在使用 亚马逊云科技 时提高解决方案的价值。
*前述特定亚马逊云科技生成式人工智能相关的服务仅在亚马逊云科技海外区域可用,亚马逊云科技中国仅为帮助您发展海外业务和/或了解行业前沿技术选择推荐该服务。