[发明专利]一种基于SQLite数据库的丢失数据的恢复方法有效
申请号: | 201510377225.3 | 申请日: | 2015-07-02 |
公开(公告)号: | CN105045676B | 公开(公告)日: | 2018-05-04 |
发明(设计)人: | 梁效宁;张佳强;朱星海;黄旭 | 申请(专利权)人: | 四川效率源信息安全技术股份有限公司 |
主分类号: | G06F11/14 | 分类号: | G06F11/14;G06F17/30 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 641000 *** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 sqlite 数据库 丢失 数据 恢复 装置 方法 | ||
1.一种基于SQLite数据库的丢失数据的恢复方法,其特征在于,包括如下步骤:
S1配置包含待恢复数据的源数据库中部分或全部表的列的属性特征;
S2将列的属性特征与待恢复数据进行匹配验证;
S1的详细流程如下所述:
S11读取包含待恢复数据的源数据库;
S12根据S11中获取的源数据库,设置包含待恢复数据的表的列的属性,包括列值类型、列值长度和列数量;
S13保存S12设置的列的属性至预置的特定文件类型中;
S2的详细流程如下所述:
S21从0字节开始遍历读取待恢复的镜像文件;
S22读取S1中配置的源数据库的列的属性特征;
S23将列的属性特征与待恢复数据进行匹配验证;
S24根据SQLite数据库存储规则进行信息解码,并按照源数据库格式恢复数据库的丢失数据;
S23的详细流程如下所述:
以S23的列的属性特征作为匹配规则,对读取的镜像文件扫描匹配管理字节,扫描时从镜像文件0字节开始依次读取长度为最小扫描单元的内容进行匹配,匹配成功则跳至S24,否则跳转至下一个字节即1字节,继续执行本步骤,其中最小扫描单元=3+列的数量;
S23判断结构是否匹配的方法为:在扫描过程中成功匹配数据时,则向前读取3个字节的数据内容,并检验其是否满足存储数据的结构特征;
所述的检验其是否满足存储数据的结构特征规则如下:
规则1:数据符合正常的payload结构,则直接按照结构读取;
规则2:数据不符合正常payload结构时,又分为多字节匹配和单字节匹配,当字节的第八位为1时,表明管理项为多字节,多字节的处理方式为读取的数据中当字节第八位为1时,继续向下读取,直至字节的第八位为0结束,将读取的字节作为一个管理项,去掉每字节的第八位构成新的值作为该管理项对应数据的长度值;当字节的第八位为0时,表示该字节为单字节,其值即为该管理项的长度;根据匹配成功的字节中记录的关于列长度的值,向后匹配数据内容,在匹配的过程中将数据库定义时的数据类型划分为int、double、text、blob,按照这四种类型进行逐一匹配。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川效率源信息安全技术股份有限公司,未经四川效率源信息安全技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510377225.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种光伏太阳能蚯蚓养殖大棚
- 下一篇:金鱼缸自动换水装置