本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Amazon RDS 切换只读副本执行块
类别:数据库切换
Amazon RDS Switchover 只读副本执行块允许您对 Amazon RDS Oracle 只读副本执行受控切换,使其成为新的主数据库实例。这为使用跨区域只读副本的 Amazon RDS Oracle 部署启用了多区域数据库故障转移,而不会在正常路径中丢失数据。
主要优势
零数据丢失切换:优雅的切换路径可确保在提升只读副本之前,所有数据在主副本和备用副本之间同步,从而防止任何数据丢失。
自动验证:在尝试切换之前,区域切换会验证引擎兼容性、复制状态、备份配置和待处理的维护。
不合时宜的回退:如果无法进行优雅的切换或请求不雅的执行,则区域切换可以直接提升只读副本,优先考虑恢复速度。
配置
在配置 Amazon RDS Switchover 只读副本执行块时,您需要为多区域 Amazon RDS Oracle 部署中的每个区域提供数据库实例 ARN。
重要
在配置执行块之前,请确保计划的执行角色具有正确的 IAM 策略。有关更多信息,请参阅 Amazon RDS 切换只读副本执行区块策略示例。
要配置 Amazon RDS 切换只读副本执行块,请输入以下值:
步骤名称:输入名称。
步骤描述(可选):输入步骤的描述。
区域@@ 的数据库实例 ARN:输入计划中每个区域的数据库实例 ARN。您必须为每个地区提供一个 ARN。
超时:输入超时值。
然后,选择保存步骤。
工作原理
当您使用 Amazon RDS Switchover 只读副本执行块执行计划时,区域切换会执行以下操作:
优雅切换(默认):
区域切换等待目标只读副本实例达到可用状态。
区域切换验证目标实例是否为处于有效待机模式(已装载或打开只读)的 Oracle 19c 或更高版本的只读副本。
区域切换确认主实例和备用实例之间的复制处于活动状态。
区域切换可验证备用实例上是否启用了自动备份。
区域切换会检查两个实例上是否阻止了待处理的维护操作。
区域切换可验证其他区域的主实例是否可用。
区域切换调用
SwitchoverReadReplica以将备用服务器升级为主备用。区域切换等待实例成为主实例并达到可用状态。
如果原始主服务器已 Multi-AZ 启用,则在新主 Multi-AZ 服务器上启用区域开关以匹配原始配置。
执行不当(提升只读副本):
当请求对该promoteReadReplica行为进行不当执行时,Region switch 会直接使用提升只读副本。PromoteReadReplica这会更快,但如果复制未完全同步,则可能会导致数据丢失。升级后,Region switch 会恢复原始主服务器配置中的备份保留期、首选备份窗口和 Multi-AZ 设置。
如果在没有指定行为的情况下请求了不雅的执行,则区域切换会回退到优雅的切换路径。
注意
此执行块仅支持 Amazon RDS Oracle 19c 及更高版本。Aurora 数据库应改用 Aurora 全球数据库执行块。
在计划评估中评估的内容
当区域切换评估您的计划时,区域切换会对您的 Amazon RDS Switchover 只读副本执行块配置进行多项检查:
数据库实例 ARN 有效,且实例存在于各自的区域。
一个实例是另一个实例的只读副本(存在有效的复制关系)。
引擎是 Oracle 19c 或更高版本(不是 Aurora,不是自定义)。
主实例和备用实例之间的引擎版本相匹配。
备用实例处于已装载或打开只读模式。
备用实例启用了自动备份,保留期为非零。
复制正在实例之间进行主动复制。
区域内实例上不存在阻塞待维护操作。
选项组不会与不相关的实例共享(这可能会在切换期间导致问题)。
存在其他区域实例的资源监视器数据(用于异常升级后的配置恢复)。
区域切换还可以验证计划的 IAM 角色是否具有 Amazon RDS 切换的正确权限。有关区域切换执行块所需权限的更多信息,请参阅Amazon RDS 切换只读副本执行区块策略示例。如果任何检查失败,区域切换将返回警告消息,您可以在控制台中查看这些消息。或者,您可以通过或使用 API 操作来接收验证警告。