#实例故障在线恢复

共享集群部署中,一旦某个服务器上的数据库实例发生故障,登录到该故障实例的所有连接将被断开,该实例上的未提交事务被执行回滚。此时,其他活跃实例上的会话请求可以继续执行,但当会话请求涉及全局资源访问时,该会话请求将被阻塞,直到对全局资源进行恢复后方可继续执行;不涉及全局资源访问的会话请求则正常运行不会阻塞。无论哪种情况,集群中所有活跃实例上的会话请求最终都可以正常完成,保障业务不受影响。

YashanDB的实例故障在线恢复用于处理实例故障发生时的全局资源恢复,该工作由集群中当前的主实例完成,主要的处理逻辑按顺序列示如下:

  1. 收集需要在线恢复的故障实例信息。
  2. 暂停访问全局资源的业务。
  3. 根据剩余的活跃实例,重新构建全局资源信息。
  4. 对故障实例的redo日志进行分析,锁定需要恢复的全局资源。
  5. 恢复全局资源访问的业务。
  6. 回放redo日志,相关全局资源恢复完毕,放开对该全局资源的访问。
  7. 结束在线恢复流程。

在线恢复在实例发生故障时自动触发,无须人工触发或干预,但如用户在此期间执行表空间DDL操作将无法成功。

pdf-btn 下载文档
copy-btn 复制链接