[发明专利]innodb引擎删除记录的离线恢复方法、存储介质有效
申请号: | 201711213512.6 | 申请日: | 2017-11-28 |
公开(公告)号: | CN108062358B | 公开(公告)日: | 2020-12-29 |
发明(设计)人: | 梁德荣;田庆宜;沈长达;吴少华 | 申请(专利权)人: | 厦门市美亚柏科信息股份有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/28;G06F16/245 |
代理公司: | 深圳市博锐专利事务所 44275 | 代理人: | 张明 |
地址: | 361000 福建省厦门*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | innodb 引擎 删除 记录 离线 恢复 方法 存储 介质 | ||
本发明提供一种innodb存储引擎删除记录的离线恢复方法、存储介质,方法包括依据表空间文件的数据字典信息获取索引页的根节点页号;从所述根节点页号开始,遍历每个节点;通过遍历每个节点对应索引页的正常记录链表以及删除记录链表中的每条记录,依据每条记录的偏移地址和记录号,以及当前索引页内所有的记录数,获取未维护删除记录对应的记录号以及偏移地址范围;依据未维护删除记录的记录号,从对应的偏移地址范围中解析得到与所述未维护删除记录的记录号一致的记录。能够实现基于innodb索引页结构、记录结构以及字段特征实现全面、准确地恢复出系统未维护的删除记录的准确恢复。
技术领域
本发明涉及数据库数据处理领域,具体说的一种innodb存储引擎删除记录的恢复方法以及对应的计算机可读存储介质。
背景技术
Mysql数据库是当前最流行数据库之一,而innodb作为mysql最常用的存储引擎,其删除记录的恢复在信息安全领域一直是备受关注的热点。
目前已有一些innodb恢复的技术资料及恢复软件,这些技术基本都是基于日志和备份数据库的在线手动恢复或者基于页结构离线重组文件的恢复,而对于页结构内部被删除的记录恢复却相对缺乏。其中,基于日志和备份数据库的方法需有及时备份数据库且服务运行正常,对于没有及时备份,或相关文件损坏严重服务无法正常运行的情况该方法不可行。而基于页结构的离线恢复方法是针对索引页的结构提取数据页恢复记录,这种方法对于页内部被删除记录无法恢复,或者恢复误判概率高。
因此,有必要提供一种有别于上述恢复方式,同时更全面准确地恢复出被删除记录的方法。
本文提出一种页结构,记录结构及字段特征结合的方法,更全面恢复出被删除数据。
发明内容
本发明所要解决的技术问题是:本发明提供一种innodb存储引擎删除记录的离线恢复方法、存储介质,基于innodb索引页结构、记录结构以及字段特征实现全面、准确地恢复出被删除的记录。
为了解决上述技术问题,本发明采用的技术方案为:
一种innodb存储引擎删除记录的离线恢复方法,包括:
依据表空间文件的数据字典信息获取索引页的根节点页号;
从所述根节点页号开始,遍历每个节点;
通过遍历每个节点对应索引页的正常记录链表以及删除记录链表中的每条记录,依据每条记录的偏移地址和记录号,以及当前索引页内所有的记录数,获取未维护删除记录对应的记录号以及偏移地址范围;
依据未维护删除记录的记录号,从对应的偏移地址范围中解析得到与所述未维护删除记录的记录号一致的记录。
本发明提供的另一个技术方案为:
一种计算机可读存储介质,其内存储有计算机程序,该程序被处理器执行时实现上述方法。
本发明的有益效果在于:本发明能够基于innodb索引页结构、记录结构以及字段特征实现全面、准确地恢复出系统未维护(没有保存在删除链表中)的删除记录的准确恢复。为计算机数据取证安全领域作出巨大贡献。
附图说明
图1为本发明索引页结构;
图2为本发明索引页的B+树结构;
图3为本发明索引页为Compact行记录的格式组成;
图4为本发明索引页为Redundant行记录的格式组成;
图5为本发明一种innodb存储引擎删除记录的离线恢复方法的流程示意图;
图6为本发明实施例一的删除记录恢复流程示意图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于厦门市美亚柏科信息股份有限公司,未经厦门市美亚柏科信息股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711213512.6/2.html,转载请声明来源钻瓜专利网。