一种支持多数据源数据库版本控制系统和方法技术方案

技术编号:39058326 阅读:35 留言:0更新日期:2023-10-12 19:51
本发明专利技术涉及数据库控制技术领域,具体为一种支持多数据源数据库版本控制系统和方法,包括至少一个数据源、一个版本控制模块和一个操作控制模块;数据源为任何一种常见的数据库系统;版本控制模块用于管理多个数据源数据库的版本;操作控制模块用于对多数据源数据库的操作进行控制;有益效果为:本发明专利技术提出的支持多数据源数据库版本控制系统和方法,通过可视化的界面操作,可以详细记录每次数据库版本的升级日志,包括但不限于版本、操作人、操作时间、是否执行成功;实现了对多个数据源数据库的版本控制,能够更好地管理多个数据库系统;可视化界面,操作简单、易于使用,避免重复工作;技术可单独部署,对原系统友好,无侵入性。无侵入性。无侵入性。

【技术实现步骤摘要】
一种支持多数据源数据库版本控制系统和方法


[0001]本专利技术涉及数据库控制
,具体为一种支持多数据源数据库版本控制系统和方法。

技术介绍

[0002]数据源,顾名思义就是数据的来源,是提供某种所需要数据的器件或原始媒体。在数据源中存储了所有建立数据库连接的信息,通过提供正确的数据源名称,可以找到相应的数据库连接。
[0003]现有技术中,传统的数据库版本控制技术通常只适用于单一数据源数据库,而在企业级应用中,存在着多个不同的数据源数据库,需要进行统一的版本控制管理。这就需要一种支持多数据源数据库版本控制的技术。
[0004]但是,目前已经有一些相关技术,例如flyway等开源框架,但是它们只是针对单数据源管理,对于多数据源数据库的管理则需要特别的技术来处理并发、冲突解决、数据一致性等问题;并且多数据源模式下,每次系统的升级迭代常伴有数据库表、字段或者数据的变动,运维实施人员在升级系统的时候,则需要把数据库升级脚本在每一个分库下一一执行,一方面造成了重复劳动,一方面可能会出现遗漏、错误执行或者数据库的版本与代码版本不一致的情况,从而影响系统的正常使用。

技术实现思路

[0005]本专利技术的目的在于提供一种支持多数据源数据库版本控制系统和方法,以解决上述
技术介绍
中提出的问题。
[0006]为实现上述目的,本专利技术提供如下技术方案:一种支持多数据源数据库版本控制系统,所述系统包括至少一个数据源、一个版本控制模块和一个操作控制模块;
[0007]数据源为任何一种常见的数据库系统;版本控制模块用于管理多个数据源数据库的版本;操作控制模块用于对多数据源数据库的操作进行控制。
[0008]优选的,数据源为MySQL、SQL Server、人大金仓、达梦中的至少一种。
[0009]优选的,版本控制模块负责版本的创建、修改、升级操作。
[0010]优选的,用户通过操作控制模块进行对多数据源数据库的管理和操作。
[0011]一种支持多数据源数据库版本控制方法,所述方法包括如下步骤:
[0012]S1.用户操作系统进行升级操作;
[0013]S2.系统循环判断是否存在下一个数据源,有则切换数据源;
[0014]S3.系统按序执行所有高于当前版本的数据库脚本;
[0015]S4.执行完一个版本,则记录一条升级日志;
[0016]S5.重复步骤S2至S4操作,直至全部数据源都已经升级完毕。
[0017]优选的,执行完一个版本,则记录一条升级日志时,如果执行过程中出错或者全部成功,则该数据源升级结束。
[0018]优选的,针对每个数据源数据库,在数据源数据库中增加版本控制表。
[0019]优选的,技术人员创建多个包含添加表、修改字段数据库操作的脚本文件,并按照约定命名文件。
[0020]优选的,运维实施人员将数据库脚本文件放到系统指定目录下,通过可视化界面进行数据库版本升级操作;无论升级成功或失败,插入一条升级日志帮助用户记录当前操作情况。
[0021]与现有技术相比,本专利技术的有益效果是:
[0022]本专利技术提出的支持多数据源数据库版本控制系统和方法,通过可视化的界面操作,可以详细记录每次数据库版本的升级日志,包括但不限于版本、操作人、操作时间、是否执行成功;实现了对多个数据源数据库的版本控制,能够更好地管理多个数据库系统;可视化界面,操作简单、易于使用,避免重复工作;技术可单独部署,对原系统友好,无侵入性。
附图说明
[0023]图1为本专利技术方法流程图。
具体实施方式
[0024]为了使本专利技术的目的、技术方案进行清楚、完整地描述,及优点更加清楚明白,以下结合附图对本专利技术实施例进行进一步详细说明。应当理解,此处所描述的具体实施例是本专利技术一部分实施例,而不是全部的实施例,仅仅用以解释本专利技术实施例,并不用于限定本专利技术实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0025]实施例一
[0026]本专利技术提供一种技术方案:一种支持多数据源数据库版本控制系统,所述系统包括至少一个数据源、一个版本控制模块和一个操作控制模块;
[0027]数据源为任何一种常见的数据库系统,数据源为MySQL、SQL Server、人大金仓、达梦中的至少一种;版本控制模块用于管理多个数据源数据库的版本,版本控制模块负责版本的创建、修改、升级操作;操作控制模块用于对多数据源数据库的操作进行控制,用户通过操作控制模块进行对多数据源数据库的管理和操作。
[0028]实施例二
[0029]参照附图1所示,一种支持多数据源数据库版本控制方法,所述方法包括如下步骤:
[0030]S1.用户操作系统进行升级操作;
[0031]S2.系统循环判断是否存在下一个数据源,有则切换数据源;
[0032]S3.系统按序执行所有高于当前版本的数据库脚本;
[0033]S4.执行完一个版本,则记录一条升级日志;
[0034]S5.重复步骤S2至S4操作,直至全部数据源都已经升级完毕。
[0035]执行完一个版本,则记录一条升级日志时,如果执行过程中出错或者全部成功,则该数据源升级结束;针对每个数据源数据库,在数据源数据库中增加版本控制表;技术人员创建多个包含添加表、修改字段数据库操作的脚本文件,并按照约定命名文件;运维实施人
员将数据库脚本文件放到系统指定目录下,通过可视化界面进行数据库版本升级操作;无论升级成功或失败,插入一条升级日志帮助用户记录当前操作情况。
[0036]尽管已经示出和描述了本专利技术的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本专利技术的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本专利技术的范围由所附权利要求及其等同物限定。
本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种支持多数据源数据库版本控制系统,其特征在于:所述系统包括至少一个数据源、一个版本控制模块和一个操作控制模块;数据源为任何一种常见的数据库系统;版本控制模块用于管理多个数据源数据库的版本;操作控制模块用于对多数据源数据库的操作进行控制。2.根据权利要求1所述的一种支持多数据源数据库版本控制系统,其特征在于:数据源为MySQL、SQL Server、人大金仓、达梦中的至少一种。3.根据权利要求1所述的一种支持多数据源数据库版本控制系统,其特征在于:版本控制模块负责版本的创建、修改、升级操作。4.根据权利要求1所述的一种支持多数据源数据库版本控制系统,其特征在于:用户通过操作控制模块进行对多数据源数据库的管理和操作。5.一种如上述权利要求1

4任意一项所述的支持多数据源数据库版本控制系统用的支持多数据源数据库版本控制方法,其特征在于:所述方法包括如下步骤:S1.用户操作系统进行升级操作;S2.系统循环判断是否存...

【专利技术属性】
技术研发人员:赵岳陈兆亮宁方刚迟钰沛
申请(专利权)人:浪潮软件股份有限公司
类型:发明
国别省市:

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

1