PolarDB是一个多节点的集群,其中一个节点是主节点(Master),其他节点为只读节点。除了因系统故障自动进行主备切换外,您也可以手动进行主备切换,指定一个只读节点为新的主节点,适用于高可用演练,或者需要指定某个节点为主节点的场景。

影响

PolarDB集群进行主备切换时,可能会出现30秒左右的闪断,请您尽量在业务低峰期执行升级操作,或确保您的应用有自动重连机制。

手动切换

  1. 登录PolarDB管理控制台
  2. 在页面左上角,选择集群所在地域。
    选择集群所在地域
  3. 找到目标集群,单击集群ID。
  4. 基本信息页面,将浏览器拖动到最下方。
  5. 节点信息栏右上角,单击主备切换
    主备切换
  6. 主备切换对话框中选择新主节点,单击确定
    说明 如果您没有选择新主节点,系统将自动选取优先级最高的只读节点作为新主节点进行切换。切换时可能会出现30秒左右的闪断,请确保应用具备重连机制。
    主备切换对话框

自动切换

PolarDB采用双活(Active-Active)的高可用集群架构,可读写的主节点和只读节点之间自动进行故障切换(Failover),系统自动选取新的主节点。

PolarDB每个节点都有一个故障切换(Failover)优先级,决定了故障切换时被选取为主节点的概率高低。当多个节点的优先级相同时,则有相同的概率被选取为主节点。

自动选取主节点按以下步骤进行:

  1. 系统找出当前可以被选取的所有只读节点。
  2. 系统选择优先级最高的一个或多个只读节点。
  3. 如果切换第一个节点失败(例如,网络原因、复制状态异常等),系统会尝试切换下一个,直至成功。

相关API

API 描述
FailoverDBCluster 手动对PolarDB集群进行主备切换,可以指定一个只读节点为新的主节点。