[发明专利]一种数据库恢复方法及装置在审
申请号: | 201410646176.4 | 申请日: | 2014-11-14 |
公开(公告)号: | CN104376073A | 公开(公告)日: | 2015-02-25 |
发明(设计)人: | 杨威 | 申请(专利权)人: | 北京锐安科技有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 胡彬;路凯 |
地址: | 100044 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据库 恢复 方法 装置 | ||
技术领域
本发明涉及数据库领域,尤其涉及一种数据库恢复方法及装置。
背景技术
现有技术中,数据库的结构设计(包括数据表结构和数据内容)往往随着功能模块的变化而变迁,数据库的各个版本之间的差异可能较大。在安装或更新数据库的新版本后,需要将备份的旧版本的数据库恢复到新版本数据库中。
现有技术中的数据库恢复方法的流程如图1所示,包括以下步骤:
110、启动旧版本数据库。120、启动新版本数据库。130、清空新版本数据库中所有表的记录。140、人工判断旧版本数据库和新版本数据库中的每个数据表是否发生变化,如果否,则执行步骤150、采用数据库管理系统提供的数据迁移工具,将旧数据库中数据表的记录迁移到新数据库中;如果是,则执行步骤160、采用数据库管理系统提供的数据迁移工具,根据变化的类型做出不同的操作,将旧数据库中数据表的记录迁移到新数据库中。本步骤160采用数据库管理系统提供的数据迁移工具,对于旧数据库中与新数据库数据表结构不相同的每一个数据表,判断哪些列需要舍弃,哪些列需要进行数据类型转换等特殊策略,选择对应的操作类型后,将记录迁移到新的数据库中;如果某些数据表的记录内容还需要进行特殊修改才能满足新版本的要求,则可以执行一系列SQL语句,或者执行一些程序进行处理。
由于新版本数据库和旧版本数据库之间数据表结构和数据内容不兼容,现有的将备份的旧版本的数据库恢复到数据库结构设计发生变化的新版本的数据库中时,需要将数据库停止工作,不能实现在线恢复,且该方法步骤繁琐,操作起来比较耗时。
发明内容
本发明是为了解决现有技术中的上述不足而完成的,本发明的目的在于提出一种数据库恢复方法及装置,该方法能够解决现有技术不能实现在线恢复且耗时的问题。
为达此目的,本发明采用以下技术方案:
第一方面,本发明公开了一种数据库恢复方法,包括:
获取旧版本数据库信息,所述旧版本数据库信息包括第一数据表结构信息、数据内容和版本号;
获取新版本数据库信息,所述新版本数据库信息包括第二数据表结构信息;
根据所述第一数据表结构信息和所述第二数据表结构信息,判断所述旧版本数据库的数据表结构与所述新版本数据库的数据表结构是否一致,如果是,则直接将所述旧版本数据库恢复到所述新版本数据库中,如果不是,则执行下一步;
根据所述第一数据表结构信息和所述第二数据表结构信息,获取相对于所述旧版本数据库,所述新版本数据库变化的类型;
根据所述变化的类型对应的预设策略,将所述旧版本数据库恢复到所述新版本数据库中。
进一步地,所述第一数据表结构信息为第一数据库名、第一数据表名、第一列名、第一列长度和第一列数据类型中的任一种或至少两种的组合;所述第二数据表结构信息为第二数据库名、第二数据表名、第二列名、第二列长度和第二列数据类型中的任一种或至少两种的组合。
进一步地,所述变化的类型包括删除表、增加表、表改名、删除列、增加列、列改名、列改变顺序和列改变数据类型中的任一种或至少两种的组合,所述删除表对应的预设策略是略过对删除的表的恢复;所述增加表对应的预设策略是略过对新增的表的恢复;所述表改名对应的预设策略是将所述旧版本数据库中被改名的表恢复到所述新版本数据库中改名的表中;所述删除列对应的预设策略是略过对删除的列的恢复;所述增加列对应的预设策略是略过对新增的列的恢复或者将新增的列设置为预设的默认值、空值或指示值;所述列改名对应的预设策略是将所述旧版本数据库中被改名的列恢复到所述新版本数据库中改名的列中;所述列改变顺序对应的预设策略是按照所述新版本数据库中列的顺序,将所述旧版本数据库的列恢复到所述新版本数据库中;所述列改变数据类型对应的预设策略是将所述旧版本数据库中的值转换为新的数据类型后恢复到所述新版本数据库中,如果无法转换,则将所述新版本数据库中的列恢复为指定的值。
进一步地,所述获取新版本数据库信息,所述新版本数据库信息包括第二数据表结构信息前还包括:
建立预设策略配置文件,所述预设策略配置文件包括对所述预设策略配置的规则的执行程序,其中,对所述表改名、增加列、列改名和列改变数据类型对应的预设策略配置的规则的执行程序由用户进行编辑,对所述删除表、增加表、删除列和列改变顺序对应的预设策略配置的规则的执行程序是预先设置的。
进一步地,所述将备份的所述旧版本数据库恢复到所述新版本数据库中的方式为块拷贝方式。
第二方面,本发明公开了一种数据库恢复装置,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京锐安科技有限公司,未经北京锐安科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410646176.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于地图优化设备管理的方法及系统
- 下一篇:一种提取网页正文的方法