云数据库 Tair(兼容 Redis)实例支持手动执行主备切换,即主动交换主节点与备节点的角色。与系统自动故障转移不同,手动切换为您提供了在非故障场景下主动管控实例的能力。
应用场景
容灾演练:在业务低峰期模拟节点故障,验证业务应用在数据库发生切换时的容灾能力和可靠性。
优化访问延迟:当应用与主节点部署在不同可用区时,通过主备切换,将主节点切换至应用所在的可用区,实现就近访问,降低网络延迟。
场景示例
在本案例的环境中,应用所属的ECS实例在可用区B,实例的主节点在可用区A,ECS需要跨可用区连接主节点,将导致网络延迟增高,影响实例的性能和业务的运行。

为优化云资源的部署架构,您可以将节点的角色进行互换。在本案例中,执行主备切换,可用区B中的节点角色变更为主节点(仅更改节点的角色,不会改变节点所属的可用区和ID),从而实现ECS和实例同可用区的就近连接,网络延时最小。
前提条件
实例类型为高可用。
单副本架构不支持主备切换。
切换影响
执行切换的数据节点将出现秒级的连接闪断,同时,为避免主备切换引起潜在的数据丢失风险(例如主备节点数据同步延迟引起数据不一致)、DNS缓存引起的数据双写,该数据节点还会出现30秒内的只读状态。
实例处于切换中状态时,您将无法执行实例级别的操作(例如变更配置、迁移可用区等)。
关于无感切换
当实例和客户端版本满足以下条件时,可实现无感主备切换,从而避免连接闪断和只读状态对业务的影响:
实例版本:7.0.2.9及以上。
客户端版本:Valkey-Java 5.3.0及以上,或Valkey-Go 1.0.67及以上。
操作步骤
访问实例列表,在上方选择地域,然后单击目标实例ID。
在左侧导航栏,单击服务可用性。
在数据节点区域框,选中需要执行切换的数据分片,单击主从切换。
说明若实例为集群架构,您可以在本页面查看到各数据分片中,主备节点所属的可用区信息。
在右侧弹出的面板中,选择切换的生效时间。
立即生效:立即执行主备切换。
可运维时间内生效:在您设置的可维护时间段内进行切换。关于如何查看和修改可维护时间段,请参见设置可维护时段。
说明如果您选择可运维时间内生效,系统会立即开始进行资源申请、数据同步等前置准备工作,此时实例状态将变为切换中,但这并不会影响实例的正常服务。实际的节点角色切换及伴随的业务影响(如连接闪断和只读状态)只会在到达可维护时段时才会发生。
单击确定。
为保障安全,请按界面提示完成二次验证(例MFA),验证后15分钟内免重复验证。
相关API
API接口 | 说明 |
手动执行主备切换,可应用于容灾演练、多可用区场景下的应用就近连接等需求。 |
相关文档
本文介绍的是手动执行的主备切换。作为高可用能力的另一核心,云数据库 Tair(兼容 Redis)也支持自动故障转移。系统会持续监测节点的健康状态,一旦发现主节点不可用,便会自动触发主备切换,将备节点提升为新的主节点,从而保障服务的高可用性。更多信息,请参见高可用。