[发明专利]基于页面更新序号的数据库集群多节点重做日志恢复方法有效
申请号: | 202010993792.2 | 申请日: | 2020-09-21 |
公开(公告)号: | CN112099996B | 公开(公告)日: | 2022-04-05 |
发明(设计)人: | 刘碧楠;周勇亮;吴嵩;蒋旭;于凯;马岳;李彬;陈振巍 | 申请(专利权)人: | 天津神舟通用数据技术有限公司 |
主分类号: | G06F11/14 | 分类号: | G06F11/14;G06F16/23 |
代理公司: | 天津盛理知识产权代理有限公司 12209 | 代理人: | 王利文 |
地址: | 300384 天津市滨海新*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 页面 更新 序号 数据库 集群 节点 重做 日志 恢复 方法 | ||
1.一种基于页面更新序号的数据库集群多节点重做日志恢复方法,其特征在于:包括以下步骤:
步骤1、在页面头部分配空间作为页面更新序号;
步骤2、集群中所有的节点在更新数据页面时,更新页面更新序号和本节点的重做日志;
步骤3、重新启动数据库集群,最先启动的节点成为主节点,由主节点进行实例恢复;
步骤4、主节点从共享磁盘加载控制文件,从控制文件中读取每一个节点的重做日志信息作为扫描句柄,保存在扫描句柄数组中;
步骤5、遍历所有的扫描句柄,恢复重做日志;
步骤6、所有扫描句柄已经扫描完毕,重做日志恢复结束;
所述步骤5的具体实现方法包括以下步骤:
⑴遍历扫描句柄,如果所有的扫描句柄已经扫描完毕,跳出循环,转到步骤6;
⑵如果当前的扫描句柄已经扫描完毕,转到步骤⑴,开始下一个重做日志扫描;
⑶从当前的扫描句柄循环读取、分析、恢复每一条重做日志;其具体实现方法为:
①如果已经扫描到重做日志末尾,当前重做日志恢复结束,标记当前扫描句柄扫描完毕,转到步骤⑴,开始下一个重做日志扫描;
②从扫描句柄当前扫描位置获取一条重做日志,从重做日志中获取页面更新序号,与当前页面的更新序号做对比,进行如下处理:
若重做日志中记录的序号小于当前页面的更新序号,则忽略这条日志,继续下一条日志的扫描;
若重做日志中记录的序号等于当前页面的更新序号,则将日志的修改应用到数据页面,然后将当前页面更新序号值加一,继续下一条日志扫描;
若重做日志中记录的序号大于当前页面的更新序号且页面不连续,则页面的顺序更新记录在其他节点的重做日志当中,转到步骤⑴,开始下一个重做日志扫描。
2.根据权利要求1所述的基于页面更新序号的数据库集群多节点重做日志恢复方法,其特征在于:所述步骤1在页面头部分配8个字节空间作为页面更新序号。
3.根据权利要求1所述的基于页面更新序号的数据库集群多节点重做日志恢复方法,其特征在于:所述步骤2的具体实现方法为:当数据页面发生修改时,新增一条重做日志,将修改的内容和当前的页面更新序号写入到这条重做日志当中,然后将页面更新序号值加一。
4.根据权利要求1所述的基于页面更新序号的数据库集群多节点重做日志恢复方法,其特征在于:所述主节点从共享磁盘加载的控制文件为定义数据库集群物理状态的二进制文件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津神舟通用数据技术有限公司,未经天津神舟通用数据技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010993792.2/1.html,转载请声明来源钻瓜专利网。