一种数据库的数据动态加载方法及装置制造方法及图纸

技术编号:38272938 阅读:16 留言:0更新日期:2023-07-27 10:26
本发明专利技术提出了一种数据库的数据动态加载方法及装置,方法包括:在第一数据库中,获取加载表的表信息;基于表信息,在第二数据库中创建被加载表;将加载表由第一数据库加载至第二数据库。本发明专利技术简化了使用者需要导入其他数据库中的数据时的操作步骤,在实际操作时易于上手,操作简单;并且,本发明专利技术不会生成中间介质文件防止文件内容被恶意改动,直接通过linux系统的文件控制的方式相对较安全。统的文件控制的方式相对较安全。统的文件控制的方式相对较安全。

【技术实现步骤摘要】
一种数据库的数据动态加载方法及装置


[0001]本专利技术涉及数据库
,尤其涉及一种数据库的数据动态加载方法及装置。

技术介绍

[0002]随着信息技术的发展,企业对数据管理的要求越来越高数据库逐渐成为主流的数据存储介质。一些行业对数据管理要求较高的机构如银行、证券等,一旦服务器出现意外停机、服务器遭到恶意攻击导致数据丢的失情况、存储介质受到物理损坏、人工操作失误等严重意外情况会造成不可挽回的损失。所以市面上出现一些数据库备份恢复工具和备份恢复开源软件,但是这些工具大多需要依靠生成介质文件保存数据,再将介质文件中的数据加载进数据库中。
[0003]目前市面上的数据库数据加载的方式都有如下几种:
[0004]1)同构数据库静态加载技术:在相同架构的数据库下(比如oracle和oracle,postgresql和postgresql,相同体系架构的数据库),当需要将数据文件进行移库处理时,需要对数据库进行重新启动,这样才能通过数据库机制将数据加载到新的库中。
[0005]2)异构数据库备份恢复技术:在不同架构的数据库中,需要进行数据的移库处理时,只能通过将旧的数据库中的数据通过备份工具,备份到某个数据文件,然后新库通过数据恢复工具,将数据文件导入到新库中,实现数据的加载。
[0006]3)数据文件的加载校验:目前在备份和恢复过程中,如果文件遭受改写,则恢复时会导入错误的数据。
[0007]目前技术中,进行数据加载的过程比较繁琐,而且会耗费大量的服务器资源。
专利技术内
[0008]本专利技术要解决的技术问题是,如何简化数据加载的过程,节约服务器资源;有鉴于此,本专利技术提供一种数据库的数据动态加载方法及装置。
[0009]本专利技术采用的技术方案是,一种数据库的数据动态加载方法,包括:
[0010]步骤S1,在第一数据库中,获取加载表的表信息;
[0011]步骤S2,基于所述表信息,在第二数据库中创建被加载表;
[0012]步骤S3,将所述加载表由所述第一数据库加载至所述第二数据库。
[0013]在一个实施方式中,在第一数据库中,获取加载表的表信息的步骤之前,所述方法还包括:
[0014]确定所述第二数据库是否符合加载条件。
[0015]在一个实施方式中,其特征在于,所述第一数据库以及所述第二数据库之间互为同构数据库或异构数据库。
[0016]在一个实施方式中,当所述第一数据库以及所述第二数据库之间互为同构数据库时,基于所述表信息,在第二数据库中创建被加载表,包括:
[0017]在所述第二数据库中创建一个与所述加载表结构相同、类型相同的被加载表。
[0018]在一个实施方式中,当所述第一数据库以及所述第二数据库之间互为同构数据库时,将所述加载表由所述第一数据库加载至所述第二数据库,包括:
[0019]获取被加载表的物理文件绝对路径,利用所述路径将加载表的物理文件对应传输至所述被加载表;
[0020]对所述被加载表和所述加载表进行MD5完整性校验;
[0021]在所述第一数据库中,将所述加载表的缓冲区清空,重新从所述物理文件中读取刷入所述缓冲区中,以实现对所述加载表的数据动态加载。
[0022]在一个实施方式中,当所述第一数据库以及所述第二数据库之间互为异构数据库时,所述基于所述表信息,在第二数据库中创建被加载表,包括:
[0023]基于所述第一数据库的结构确定所述被加载表的表信息,将所述被加载表的结构、表类型转换为所述第二数据库对应的表结构和类型。将转换后得到的表信息进行保存,用于在所述第二数据库中创建所述加载表。
[0024]在一个实施方式中,当所述第一数据库以及所述第二数据库之间互为异构数据库时,将所述加载表由所述第一数据库加载至所述第二数据库,包括:
[0025]记录对所述被加载表至当前时间节点的所有操作;
[0026]基于对所述被加载表的操作,确定所述被加载表中至目前时间节点的有效数据;
[0027]对每一条所述有效数据转化成符合所述第二数据库插入语法的sql语句,通过数据库程序编程接口发送给数据库后端,将表数据插入所述加载表中;
[0028]对所述被加载表和所述加载表进行MD5完整性校验。
[0029]本专利技术的另一方面还提供了一种数据库的数据动态加载装置,包括:
[0030]获取单元,被配置为在第一数据库中,获取加载表的表信息;
[0031]创建单元,被配置为基于所述表信息,在第二数据库中创建被加载表;
[0032]动态加载单元,被配置为将所述加载表由所述第一数据库加载至所述第二数据库。
[0033]本专利技术的另一方面还提供了一种电子设备,所述电子设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上任一项所述的数据库的数据动态加载方法的步骤。
[0034]本专利技术的另一方面还提供了一种计算机存储介质,所述计算机存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上任一项所述的数据库的数据动态加载方法的步骤。
[0035]采用上述技术方案,本专利技术简化了使用者需要导入其他数据库中的数据时的操作步骤,在实际操作时易于上手,操作简单;并且,本专利技术不会生成中间介质文件防止文件内容被恶意改动,直接通过linux系统的文件控制的方式相对较安全。
附图说明
[0036]图1为根据本专利技术实施例的数据库的数据动态加载方法流程示意图;
[0037]图2为根据本专利技术实施例的同构数据库是否符合数据加载条件流程示意图;
[0038]图3为根据本专利技术实施例的异构数据库是否符合数据加载条件流程示意图;
[0039]图4为根据本专利技术实施例的同构数据库获取被加载表信息流程示意图;
[0040]图5为根据本专利技术实施例的同构数据库构建加载表流程示意图;
[0041]图6为根据本专利技术实施例的同构数据库校验文件完整性流程示意图;
[0042]图7为根据本专利技术实施例的同构数据库加载流程示意图;
[0043]图8为根据本专利技术实施例的异构数据库获得被加载表信息流程示意图;
[0044]图9为根据本专利技术实施例的异构数据库文件完整性校验流程示意图;
[0045]图10为根据本专利技术实施例的数据库的数据动态加载装置组成结构图;
[0046]图11为根据本专利技术实施例的电子设备结构示意图。
具体实施方式
[0047]为更进一步阐述本专利技术为达成预定目的所采取的技术手段及功效,以下结合附图及较佳实施例,对本专利技术进行详细说明如后。
[0048]在附图中,为了便于说明,已稍微夸大了物体的厚度、尺寸和形状。附图仅为示例而并非严格按比例绘制。
[0049]还应理解的是,用语“包括”、“包括有”、“具有”、“包含”和/或“包含有”,当在本说明书中使用时表示存在本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据库的数据动态加载方法,其特征在于,包括:在第一数据库中,获取加载表的表信息;基于所述表信息,在第二数据库中创建被加载表;将所述加载表由所述第一数据库加载至所述第二数据库。2.根据权利要求1所述的数据库的数据动态加载方法,其特征在于,在第一数据库中,获取加载表的表信息的步骤之前,所述方法还包括:确定所述第二数据库是否符合加载条件。3.根据权利要求2所述的数据库的数据动态加载方法,其特征在于,所述第一数据库以及所述第二数据库之间互为同构数据库或异构数据库。4.根据权利要求3所述的数据库的数据动态加载方法,其特征在于,当所述第一数据库以及所述第二数据库之间互为同构数据库时,基于所述表信息,在第二数据库中创建被加载表,包括:在所述第二数据库中创建一个与所述加载表结构相同、类型相同的被加载表。5.根据权利要求3所述的数据库的数据动态加载方法,其特征在于,当所述第一数据库以及所述第二数据库之间互为同构数据库时,将所述加载表由所述第一数据库加载至所述第二数据库,包括:获取被加载表的物理文件绝对路径,利用所述路径将加载表的物理文件对应传输至所述被加载表;对所述被加载表和所述加载表进行MD5完整性校验;在所述第一数据库中,将所述加载表的缓冲区清空,重新从所述物理文件中读取刷入所述缓冲区中,以实现对所述加载表的数据动态加载。6.根据权利要求3所述的数据库的数据动态加载方法,其特征在于,当所述第一数据库以及所述第二数据库之间互为异构数据库时,所述基于所述表信息,在第二数据库中创建被加载表,...

【专利技术属性】
技术研发人员:赵晨光张龙苗健吕新杰
申请(专利权)人:瀚高基础软件股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1