将 Amazon RDS 的数据库实例转换为多可用区部署
将数据库实例修改为多可用区部署,可通过在另一个可用区中添加一个备用实例来提高可用性。该过程涉及的停机时间极少,需要围绕存储和性能影响进行仔细的规划。此项更改可增强容错能力并减少出现故障时的恢复时间,使其成为高可用性环境的理想之选。
如果您有一个采用单可用区部署的数据库实例,并且要将它修改为多可用区数据库实例部署,则 Amazon RDS 执行以下操作:
-
拍摄主数据库实例的 Amazon Elastic Block Store(EBS)卷的快照。
-
从快照中为备用副本创建新卷。这些卷在后台初始化,并在数据完全初始化后达到最大卷性能。
-
开启主副本卷与备用副本卷之间的同步块级复制。
重要
在单可用区转换到多可用区期间,从快照创建备用数据库实例可以避免停机时间,但可能会影响性能,特别是对于写入敏感型工作负载。同步复制会增加 I/O 延迟,从而影响数据库性能。作为最佳做法,请避免将生产数据库实例转换为多可用区数据库实例。
而是创建只读副本,对该副本启用备份,将其转换为多可用区,将数据加载到其卷中,然后将它提升为主数据库实例。有关更多信息,请参阅 使用数据库实例只读副本。
有两种方法可将数据库实例修改为多可用区数据库实例部署:
使用 RDS 控制台转换为多可用区数据库实例部署
您可以使用 RDS 控制台将数据库实例转换为多可用区数据库实例部署。
您只能使用控制台来完成转换。要使用 Amazon CLI 或 RDS API,请按照将数据库实例修改为多可用区数据库部署中的说明操作。
使用 RDS 控制台转换为多可用区数据库实例部署
登录 Amazon Web Services Management Console 并通过以下网址打开 Amazon RDS 控制台:https://console.aws.amazon.com/rds/
。 -
在导航窗格中,选择数据库,然后选择要修改的数据库实例。
-
从 Actions(操作)中,选择 Convert to Multi-AZ deployment(转换为多可用区部署)。
-
在确认页面上,选择 Apply immediately(立即应用)以立即应用更改。选择此选项不会导致停机,但可能会对性能产生影响。或者,您可以选择在下一个维护时段内应用更新。有关更多信息,请参阅 使用计划修改设置。
-
选择 Convert to Multi-AZ(转换为多可用区)。
将数据库实例修改为多可用区数据库部署
可以通过以下方式将数据库实例修改为多可用区数据库实例部署:
-
使用 RDS 控制台,修改数据库实例,并将 Multi-AZ deployment(多可用区部署)设置为 Yes(是)。
-
使用 Amazon CLI,调用 modify-db-instance 命令,然后设置
--multi-az
选项。 -
使用 RDS API,调用 ModifyDBInstance 操作并将
MultiAZ
参数设置为true
。
有关修改数据库实例的信息,请参阅修改 Amazon RDS 数据库实例。在修改完成后,Amazon RDS 会触发事件 (RDS-EVENT-0025),表示该过程已完成。您可以监控 Amazon RDS 事件。有关事件的更多信息,请参阅使用 Amazon RDS 事件通知。