[发明专利]一种异构数据库备份文件恢复方法有效
申请号: | 201710622124.7 | 申请日: | 2017-07-27 |
公开(公告)号: | CN107391306B | 公开(公告)日: | 2019-12-10 |
发明(设计)人: | 刘赛;杨华飞;聂庆节;刘嘉华;刘军;张磊;马悦皎;缪骞云;张翼;张迎星 | 申请(专利权)人: | 国家电网公司;南京南瑞集团公司;南京南瑞信息通信科技有限公司;国网江苏省电力公司电力科学研究院 |
主分类号: | G06F11/14 | 分类号: | G06F11/14 |
代理公司: | 32224 南京纵横知识产权代理有限公司 | 代理人: | 董建林 |
地址: | 211100 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据库 备份文件 恢复 方法 | ||
1.一种异构数据库备份文件恢复方法,其特征在于,包括以下步骤:
(1)对异构源数据库中数据归一转化;
(2)对数据块进行聚类预处理,利用DELTA压缩算法对同一类数据块进行压缩,生成对应的二进制存储文件,并将压缩后的备份文件备份到备份介质中;
(3)采用“SQL重现法”对备份文件中元数据进行还原,根据配置文件读取还原端数据库版本;具体方法如下:
301、读取恢复端数据库类型及版本号,根据数据库版本加载相应映射规则;
302、根据恢复任务信息读取相应任务的预定集序号,根据预定集序号查找待恢复源表序号、约束序号以及字段序号;
303、根据源表序号以及约束序号查找元数据中对应源表元素与约束元素,检查对应标识符内容:如果标识符为1,则执行步骤304,否则执行步骤305;
304、获取源表与依赖具体信息,包括:表名、表中字段名、字段类型、主键、外键以及索引,获取完成后生成对应SQL语句并存储到.sql文件中,文件生成结束后将标识符设置为0;
305、据字段序号获取对应字段元素,并检查对应标识符内容,如果标识符为1则执行步骤306,否则执行步骤307;
306、获取字段具体信息,包括:字段名、字段类型、字段值、字段对应源表名,根据获取信息生成对应INSERT语句实现数据添加,并将这些内容存储到.sql文件中,文件生成结束后将标识符设置为0;
307、调用控制命令,通过执行.sql文件将数据恢复到数据库;
(4)根据转化规则将元数据模型转化为对应版本数据库支持的SQL语句,进行数据一致性检测后导入数据库,实现异构数据库备份文件恢复。
2.根据权利要求1所述的异构数据库备份文件恢复方法,其特征在于,步骤(1)的具体方法如下:
101、加载驱动程序:将驱动程序导入开发环境,通过Class.forName()函数对驱动程序进行加载;
102、创建连接:加载完驱动程序后,通过DriverManage的getConnect()函数创建数据库连接对象,连接对象包含:协议名、IP地址、端口号、数据库名称;
103、创建Statement对象:通过Connection的create Statement()函数创建Statement对象;
104、执行SQL语句:当SQL语句产生单个结果集时,使用executeQuery();当无返回结果时,使用executeUpdate();当返回多个结果集时,使用execute();
105、获取结果:当执行statement的execute()和executeQuery()时返回的结果是ResultSet对象,并通过指向该对象的指针使用next()函数获取返回结果中的数据;
106、根据数据库类型加载转化规则,通过excData()函数将异构数据转化为统一标准的元数据,元数据中各元素包含关键的字段标识符,用于数据恢复时检查数据的一致性,备份过程中如果对元数据进行更改则设置标识符为1;
107、通过wrtData()函数将所得数据按照XML格式写入文件,生成对应的备份文件;
108、关闭连接:若不再使用数据库时,用close()方法关闭数据库连接。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国家电网公司;南京南瑞集团公司;南京南瑞信息通信科技有限公司;国网江苏省电力公司电力科学研究院,未经国家电网公司;南京南瑞集团公司;南京南瑞信息通信科技有限公司;国网江苏省电力公司电力科学研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710622124.7/1.html,转载请声明来源钻瓜专利网。