GaussDB(for MySQL)只读节点升主节点
GaussDB(for MySQL)是一个多节点的实例,其中一个节点是主节点(Master),其他节点为只读节点。除了因系统故障自动切换外,对于用于高可用演练,或者需指定某个节点为主节点的场景,您也可以手动切换,指定一个只读节点为新的主节点。
手动切换
- 登录管理控制台。
- 单击管理控制台左上角的,选择区域和项目。
- 在页面左上角单击,选择 。
- 在“实例管理”页面的实例列表中,选择对应实例,单击实例名称进入实例概览页面。
- 在“节点信息”列表中,选择目标只读节点,在“操作”列单击“只读升主”。
图1 只读升主
- 在弹出框中单击“是”。
- 切换时可能会出现30秒左右的闪断,请确保应用具备重连机制。
- 切换过程中节点运行状态为“只读升主中”,此过程大概需要几秒或几分钟。
- 切换完成后,节点运行状态变为“正常”,您可查看到原先的只读节点和主节点的角色已经互换。
- 故障倒换优先级为-1的只读节点不支持升为主节点。
- 只读升主操作可能会造成几秒或几分钟的服务闪断。
- 只读升主操作会导致读内网地址发生切换,为避免对您的业务产生影响,建议使用网络信息中的“读写内网地址”或数据库代理中的“代理地址”连接实例。如需了解读写内网地址和代理地址的区别,请参见各个IP的解释说明。
- 进行只读节点升主节点前可以开启应用无损透明(ALT),保证业务连续性。
自动切换
GaussDB(for MySQL)采用双活(Active-Active)的高可用实例架构,可读写的主节点和只读节点之间自动进行故障倒换(Failover),系统自动选取新的主节点。
GaussDB(for MySQL)每个节点都有一个故障倒换优先级,决定了故障倒换时被选取为主节点的概率高低。
- 故障倒换优先级的取值范围为1~16,数字越小,优先级越高,即故障倒换时,主节点会优先倒换到优先级高的只读节点上。
- 当多个节点的优先级相同时,这些节点具有相同的概率被选取为主节点。
GaussDB(for MySQL)按以下步骤自动选取主节点:
- 系统找出当前可以被选取的所有只读节点。
- 选择优先级最高的一个或多个只读节点。
- 如果由于网络原因、复制状态异常等,第一个节点切换失败,则会尝试切换下一个,直至成功。