RDS Custom for Oracle 多可用区部署的失效转移过程
如果由于基础设施缺陷而导致数据库实例发生计划内或计划外的中断时,此时如果您已启用多可用区,则 Amazon RDS 会自动切换到另一个可用区中的备用副本。完成失效转移所用的时间取决于在主数据库实例变为不可用时的数据库活动和其他条件。失效转移时间通常为 60 – 120 秒。不过,事务较多或时间较长的恢复过程可能延长故障转移时间。完成失效转移后,Amazon RDS 控制台还需要一段时间才能显示新的可用区。
注意
在数据库实例可用时,当停止和启动主 EC2 主机时,可以手动强制执行失效转移。
Amazon RDS 会自动处理故障转移,因此,您可以尽快恢复数据库操作而无需管理干预。如果出现下表中描述的任一情况,主数据库实例会自动切换到备用副本:您可以在 Amazon RDS 事件日志中查看这些失效转移原因。
故障转移原因 | 描述 |
---|---|
RDS 数据库实例所在的操作系统正在脱机操作中安装补丁。 | 在操作系统补丁或安全更新的维护时段内触发了故障切换。有关更多信息,请参阅 维护数据库实例。 |
RDS 多可用区实例的主要主机运行状况不佳。 | 多可用区数据库实例部署检测到受损的主数据库实例并进行故障转移。 |
由于网络连接断开,无法访问 RDS 多可用区实例的主机。 | RDS 监控检测到主数据库实例的网络可达性故障并触发了故障转移。 |
客户修改了 RDS 实例。 | RDS 数据库实例修改触发了故障转移。有关更多信息,请参阅 修改 RDS Custom for Oracle 数据库实例。 |
RDS 多可用区实例的主要主机所在的存储卷出现故障。 | 多可用区数据库实例部署在主数据库实例上检测到存储问题并进行故障转移。 |
RDS 多可用区主实例正忙且无响应。 | 主数据库实例没有响应。我们建议您执行以下操作:检查事件和 CloudWatch 日志是否存在 CPU、内存或交换空间使用过量的情况。有关更多信息,请参阅使用 Amazon RDS 事件通知和创建对 Amazon RDS 事件触发的规则。评估您的工作负载,以确定是否使用了适当的数据库实例类。有关更多信息,请参阅 数据库实例类。 |
要确定多可用区数据库实例是否发生故障转移,您可以执行以下操作:
-
将数据库事件订阅设置为在故障转移启动时向您发送电子邮件或 SMS 通知。有关事件的更多信息,请参阅 使用 Amazon RDS 事件通知。
-
使用 Amazon RDS 控制台或 API 操作查看数据库事件。
-
通过使用 Amazon RDS 控制台、CLI 或 API 操作来查看 RDS Custom for Oracle 多可用区数据库实例部署的当前状态。
使用 RDS Custom for Oracle 多可用区部署的应用程序的存活时间(TTL)设置
故障转移机制自动更改数据库实例的域名系统 (DNS) 记录,使其指向备用数据库实例。因此,您需要重新建立与数据库实例之间的所有现有连接。确保任何 DNS 缓存存活时间(TTL)配置值都较低,并验证您的应用程序不会长时间缓存 DNS。TTL 值较高可能会阻止应用程序在失效转移后快速重新连接到数据库实例。