注册
达梦主备的备库失联后在线恢复加入集群
专栏/培训园地/ 文章详情 /

达梦主备的备库失联后在线恢复加入集群

蒲蒲 2024/09/10 492 0 0
摘要

主库故障重启(备库接管前重启)

主库故障后立即重启,此时主库的守护进程Q变成Starup状态,重新进入守护进程的启动流程,将数据一致的备库归档设置为有效状态,其余备库归档设置成无效状态,并重新Open主库。Open成功后继续作为主库,当检测到归档状态无效的备库正常时会启动Recovery处理流程,重新同步主备库数据。

备库故障处理

备库产生故障(硬件故障或者内部网卡故障)时,主库的处理流程对手动切换、自动切换模式处理上有些差异。

手动切换模式

对于手动切换模式,检测到备库故障,满足Failover条件时,库的守护进程立即切换到Failover状态,执行对应的故障处理,如果不满足切换Failover 条件,则保持 当前状态不变。
手动切换模式下,主库守护进程切换Failover条件:
1.备库实例故障,或者主备库之间出现网络故障,或者备库重时校验LSN不匹配
这三种场景下引发主库同步日志到备库失败挂起,主库实例处Suspend状态
2.主库到此备库的归档状态是Valid(读写分离集群没有此限制)
3.主库的守护进程处于Startup、Open或Recoverya状态
4.当前没有监视器命令正在执行

自动切换模式

对于自动切换模式,主库的守护进程会自动判断切换到 Failover 状态或者 Confirm 确认状态,如果两种状态切换条件都不满足,则保持当前状态不变。
自动切换模式下,主库守护进程不进入 Confirm 确认状态,直接切换到Failover 条件:
1.前四项条件,和上面列出的手动切换条件相同
2.备库实例故障,备库守护进程正常
如果只满足条件1,不满足条件2,则主库守护进程会先进入 Confirm 确认状态,等待确认监视器的确认消息。主库的守护进程进入Confirm 确认状态后,会有下面几种不同
1.主库和确认监视器之间网络连接正常
主库的守护进程收到了确认监视器返回的确认消息,如果确认监视器认定可以执行 Faiover,则主库的守护进程会切换为 Failover 状态并执行对应的处理;如果确认监视器认定不满足执行 Failover 条件,则主库的守护进程会一直保持在 Confrm 状态。确认监视器认定主库可以执行 Failover 条件:
1)主库守护进程处于 Confirm 状态
2)主库实例正常,处于 Suspend 状态
3)主库没有被接管,不存在其他主库
4)没有 takeover/switchover 命令在执行
5)当前所有归档有效的备库均可以加入主库
2.主库和确认监视器之间网络连接异常,或者没有启动确认监视器。满足下条件后,主库允许切换至 Fallover 状态执行故障处理:
1)主库实例正常,处于 Suspend 状态
2)备库守护进程正常
3)主库没有被接管,不存在其他主库
4)没有 takeover/switchover 命令正在执行
5)备库故障前可以加入主库
3.主库和确认监视器网络恢复正常后,主库已经被接管。老主库的守护进程切换为 Starup 状态,重新判断是否可加入新主库。 主库守护进程进入 Failover 状态后的执行流程(自动或手动切换模式下执行流程相同)
1)对实时主备或 MPP 主备,通知主库修改发送归档失败的备库归档状态无效
2)通知主库重新 Open。
3)将主库的守护进程切换为 Open 状态

恢复日志

image.png
image.png
image.png
image.png
image.png
image.png

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服