全网唯一标准王
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210346193.0 (22)申请日 2022.03.31 (71)申请人 深圳前海微众 银行股份有限公司 地址 518027 广东省深圳市前海深港合作 区前湾一路1号A栋201室 (72)发明人 杨成 江旻 杨杨 吴磊  (74)专利代理 机构 北京同达信恒知识产权代理 有限公司 1 1291 专利代理师 雷航 (51)Int.Cl. G06F 11/14(2006.01) G06F 16/242(2019.01) G06F 16/2453(2019.01) G06F 16/2455(2019.01) G06F 16/248(2019.01)G06F 16/23(2019.01) (54)发明名称 一种数据库备份方法及装置 (57)摘要 本申请实施例提供一种数据库备份方法及 装置, 该方法包括: 获取数据库变更脚本, 所述数 据库变更脚本中包含至少一条数据库变更语句; 针对任意一条数据库变更语句, 将所述数据库变 更语句转换成对应的数据库查询语句; 根据所述 数据库查询语句从数据库中获取查询结果; 根据 所述查询结果和所述数据库变更语句对应的反 向操作语句, 生成针对所述数据库变更语句的数 据库备份回滚语句; 基于各数据库备份回滚语 句, 生成所述数据库变更脚本对应的数据库回滚 脚本。 用于节约存储资源, 降低数据回滚对数据 库性能的影响。 权利要求书3页 说明书21页 附图7页 CN 114610541 A 2022.06.10 CN 114610541 A 1.一种数据库备份方法, 其特 征在于, 所述方法包括: 获取数据库变更脚本, 所述数据库变更脚本中包 含至少一条 数据库变更语句; 针对任意一条数据库变更语句, 将所述数据库变更语句转换成对应的数据库查询语 句; 根据所述数据库查询语句从数据库中获取查询结果; 根据所述查询结果和所述数据库 变更语句对应的反向操作语句, 生成针对所述数据库变更语句的数据库备份回滚语句; 基于各数据库备份回滚语句, 生成所述数据库变更脚本对应的数据库回滚脚本 。 2.如权利要求1中所述的方法, 其特征在于, 将所述数据库变更语句转换成对应的数据 库查询语句, 包括: 解析所述数据库变更语句, 得到所述数据库变更语句中的选取数据条件, 根据所述选 取数据条件生成所述数据库查询语句, 所述选取数据条件用于从数据库中选取所述数据库 变更语句对应的待变更对象的关联 数据。 3.如权利要求1中所述的方法, 其特征在于, 所述数据库变更语句为更新数据语句, 根 据所述查询结果和所述数据库变更语句对应的反向操作语句, 生成针对所述数据库变更语 句的数据库备份回滚语句, 包括: 解析所述更新数据语句的更新数据 范围, 判断所述更新数据范围和所述查询结果中的 查询数据范围; 在所述更新数据 范围大于等于所述查询数据 范围, 根据 所述更新数据语句和所述查询 结果生成数据库备份回滚语句; 在所述更新数据 范围小于所述查询数据范围, 则按照所述更新数据语句中的顺序关键 字确定所述查询数据范围对应的子查询结果, 根据所述更新数据语句和所述子查询结果生 成数据库备份回滚语句。 4.如权利要求1中所述的方法, 其特征在于, 所述数据库变更语句为插入数据语句或更 新数据语句, 将所述数据库变更语句转换成对应的数据库查询语句之前, 还 包括: 解析所述插入数据语句或所述更新数据语句的选取 数据条件得到数据库表名; 确定主键容器中是否包含所述数据库表名对应的主键, 若否, 则根据所述数据库表名 生成主键查询语句, 通过所述主键查询语句从所述数据库中获取所述数据库 表名对应的主 键, 将获取的主键存 储在所述主键容器中。 5.如权利要求1中所述的方法, 其特征在于, 根据 所述查询结果和所述数据库变更语句 对应的反向操作语句, 生成针对所述数据库变更语句的数据库备份回滚语句, 包括: 确定所述数据库变更语句对应的反向操作语句; 将所述查询结果中的查询值设置为所述反向操作语句的变更对象, 从而生成所述数据 库变更语句的数据库备份回滚语句。 6.如权利要求5中所述的方法, 其特征在于, 所述数据库变更语句为删除数据语句; 根 据所述数据库查询语句从数据库中获取查询结果, 包括: 根据所述数据库查询语句从数据库中获取 所述删除数据语句对应的各字段的值; 确定所述数据库变更语句对应的反向操作语句, 包括: 确定所述数据库变更语句对应的反向操作语句为插 入数据语句。 7.如权利要求5中所述的方法, 其特征在于, 所述数据库变更语句为插入数据语句; 根 据所述数据库查询语句从数据库中获取查询结果, 包括:权 利 要 求 书 1/3 页 2 CN 114610541 A 2在从所述数据库中未查询到所述数据库查询语句对应的数据后, 将 从所述插入数据语 句中获取的数据库表名和主键作为 查询结果; 确定所述数据库变更语句对应的反向操作语句, 包括: 确定所述数据库变更语句对应的反向操作语句为删除数据语句。 8.如权利要求5中所述的方法, 其特征在于, 所述数据库变更语句为更新数据语句; 根 据所述数据库查询语句从数据库中获取查询结果, 包括: 根据所述数据库查询语句从数据库中获取 所述更新数据语句的各字段的值; 将所述各字段的值中为所述更新数据语句中更新字段的或主键字段的值作为查询结 果; 确定所述数据库变更语句对应的反向操作语句, 包括: 确定所述数据库变更语句对应的反向操作语句为更新数据语句。 9.如权利要求1中所述的方法, 其特 征在于, 根据所述数据库查询语句从数据库中获取查询结果, 包括: 所述数据库变更语句为删除字段语句或变更字段语句, 则根据 所述数据库查询语句从 数据库中获取字段名及字段的属性信息作为 查询结果; 所述数据库变更语句为新增字段语句, 则根据所述数据库查询语句从数据库中未获取 到所述新增字段语句中的字段名时, 将所述 新增字段语句中的字段名作为 查询结果; 所述数据库变更语句为新增表语句, 则根据 所述数据库查询语句从数据库中未获取所 述新增表语句的数据库表名时, 将所述 新增表语句中的数据库表名作为 查询结果; 所述数据库变更语句为删除表语句, 则根据 所述数据库查询语句从数据库中获取数据 库表名、 所述数据库表名对应的每 个主键及其各字段名和字段值作为 查询结果。 10.如权利要求1至9任一项中所述的方法, 其特征在于, 基于各数据库备份回滚语句, 生成所述数据库脚本对应的数据库回滚脚本, 包括: 将所述数据库 备份回滚语句中的删除数据语句和更新数据语句定义为一级回滚脚本、 将包括所述一级回滚脚本和所述数据库备份回滚语句中的插入数据语句的定义为二级回 滚脚本、 将所述数据库备份回滚语句中的修改字段语句、 删除字段语句和删除表语句 定义 为三级回滚脚本、 将包括所述三级回滚脚本和所述数据库备份回滚语句 中的新增字段语 句、 新增表语句的定义为四级回滚脚本、 将包括所述二级回滚脚本和所述四级回滚脚本的 定义为五级回滚脚本, 得到分级回滚脚本 。 11.如权利要求1中所述的方法, 其特征在于, 还包括: 响应于所述查询结果中有存量数 据不符合所述数据库变更语句中的选取数据条件, 根据所述数据库变更语句和所述存量数 据生成提 示信息作为数据库备份回滚语句。 12.一种数据库备份装置, 其特 征在于, 所述装置包括: 获取模块, 用于获取数据库变更脚本, 所述数据库变更脚本中包含至少一条数据库变 更语句; 处理模块, 用于针对任意一条数据库变更语句, 将所述数据库变更语句转换成对应的 数据库查询语句; 根据所述数据库查询语句从数据库中获取查询结果; 根据所述查询结果 和所述数据库变更语句对应的反向操作语句, 生成针对所述数据库变更语句的数据库备份 回滚语句;权 利 要 求 书 2/3 页 3 CN 114610541 A 3

PDF文档 专利 一种数据库备份方法及装置

文档预览
中文文档 32 页 50 下载 1000 浏览 0 评论 0 收藏 3.0分
温馨提示:本文档共32页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种数据库备份方法及装置 第 1 页 专利 一种数据库备份方法及装置 第 2 页 专利 一种数据库备份方法及装置 第 3 页
下载文档到电脑,方便使用
本文档由 SC 于 2024-02-24 00:50:06上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。