一种基于数据库存储过程的自动部署方法技术

技术编号:24888248 阅读:15 留言:0更新日期:2020-07-14 18:15
本发明专利技术涉及信息技术领域,提供了一种基于数据库存储过程的自动部署方法。其主旨在于实现自动部署,其主要方案为:将各个小版本的安装包上传到各自唯一对应的指定目录得到小版本号;循环对每个小版本进行处理,读取小版本待更新内容控制文件,得到对象清单;通过对象清单为约束条件,逐条备份要更新的对象,然后再更新小版本,其他程序与更新对象存在调用关系的标记为失效包;检查失效包,如果无失效包则处理完成;如果有失效包,进行步骤5;for循环逐笔对失效包进行编译,完成整个部署。

【技术实现步骤摘要】
一种基于数据库存储过程的自动部署方法
本专利技术涉及信息
,提供了一种基于数据库存储过程的自动部署方法。
技术介绍
技术背景目前众邦银行核心系统版本发布时间长,人工操作步骤较多,对更新的内容需要手工备份,对操作人员专业知识要求非常高,操作风险较大。业务背景由于核心系统是关键业务系统,系统发版期间,对客服务暂停,原有的人工操作步骤较多,耗时较长,直接造成对客服务时间减少,影响客户体验。
技术实现思路
本专利技术的目的在于解决现有核心系统版本发布时间长,人工操作步骤较多,对更新的内容需要手工备份,对操作人员专业知识要求非常高,操作风险较大的技术问题。为解决上述技术问题,本专利技术采用以下技术方案:一种基于数据库存储过程的自动部署方案,包括以下步骤:步骤1:将各个小版本的安装包上传到各自唯一对应的指定目录,并将对应的小版本安装包的目录名设置为小版本号;步骤2:for循环对每个小版本进行处理,读取小版本待更新内容控制文件,得到包含控制文件名称CTRL_FILE、对象类型OBJ_TYPE及对象名称OBJ_NAME的对象清单;步骤3:通过对象清单的对象类型OBJ_TYPE及对象名称OBJ_NAME为约束条件,逐条备份要更新的对象,然后再更新小版本,其他程序与更新对象存在调用关系的,如被调用对象发生变化,则将对应的其他程序标记为失效包;步骤4:检查失效包,如果无失效包则处理完成;如果有失效包,进行步骤5;步骤5:for循环逐笔对失效包进行编译,完成整个部署。上述技术方案中,包括以下步骤:控制文件为小版本需更新的对象执行顺序。因为本专利技术采用上述技术方案,因此具备以下有益效果:本技术直接应用于使用数据库存储过程开发的应用部署领域,该技术可以一键部署,极大减少系统管理员手工操作步骤,有效降低误操作风险,减少操作时间,同时减少因版本部署导致的停止对外服务时间。具体实施方式本专利技术提供了一种基于数据库存储过程的自动部署方案,包括以下步骤:步骤1:将各个小版本的安装包上传到各自唯一对应的指定目录,并将对应的小版本安装包的目录名设置为小版本号;步骤2:for循环对每个小版本进行处理,读取小版本待更新内容控制文件,得到包含控制文件名称CTRL_FILE、对象类型OBJ_TYPE及对象名称OBJ_NAME的对象清单;控制文件为小版本需更新的对象执行顺序。步骤3:通过对象清单的对象类型OBJ_TYPE及对象名称OBJ_NAME为约束条件,逐条备份要更新的对象,然后再更新小版本,其他程序与更新对象存在调用关系的,如调用关系发生变化,则将对应的其他程序标记为失效包;以oracle数据库为例,备份使用sqlplus执行sql语句“selecttextfromuser_sourcewheretype=’$OBJ_TYPE’andname=’$OBJ_NAME’orderbyline”,将执行的结果文件重定向保存到备份目录。更新执行“sqlplus–s用户名/密码@实例@$CTRL_FILE”步骤4:检查失效包,如果无失效包则处理完成;如果有失效包,进行步骤5;以oracle数据库为例,检查失效包使用sqlplus执行sql语句“selectcount(*)fromdba_objectswhereowner=’用户名’andstatus=’INVALID’”,查询结果为0,则无失效包;大于0,则有失效包,需要生成失效包清单,执行sql语句“selectobject_type,object_namefromdba_objectswhereowner=’用户名’andstatus=’INVALID’”生成失效包清单的失效对象类型INOBJ_TYPE及对象名称INOBJ_NAME。步骤5:for循环逐笔对失效包进行编译,完成整个部署。for循环逐笔对失效包进行编译。以oracle数据库为例,编译失效包使用sqlplus工具,如果失效包类型是packagebody,执行sql语句“alterpakeage$INOBJ_NAMEcompliebody”;其他类型,执行sql语句“alter$INOBJ_TYPE$INOBJ_NAMEcomplie”。本文档来自技高网...

【技术保护点】
1.一种基于数据库存储过程的自动部署方案,包括以下步骤:/n步骤1:将各个小版本的安装包上传到各自唯一对应的指定目录,并将对应的小版本安装包的目录名设置为小版本号;/n步骤2:for循环对每个小版本进行处理,读取小版本待更新内容控制文件,得到包含控制文件名称CTRL_FILE、对象类型OBJ_TYPE及对象名称OBJ_NAME的对象清单;/n步骤3:通过对象清单的对象类型OBJ_TYPE及对象名称OBJ_NAME为约束条件,逐条备份要更新的对象,然后再更新小版本,其他程序与更新对象存在调用关系的,如调用关系发生变化,则将对应的其他程序标记为失效包;/n步骤4:检查失效包,如果无失效包则处理完成;如果有失效包,进行步骤5;/n步骤5:for循环逐笔对失效包进行编译,完成整个部署。/n

【技术特征摘要】
1.一种基于数据库存储过程的自动部署方案,包括以下步骤:
步骤1:将各个小版本的安装包上传到各自唯一对应的指定目录,并将对应的小版本安装包的目录名设置为小版本号;
步骤2:for循环对每个小版本进行处理,读取小版本待更新内容控制文件,得到包含控制文件名称CTRL_FILE、对象类型OBJ_TYPE及对象名称OBJ_NAME的对象清单;
步骤3:通过对象清单的对象类型OBJ_TYPE及对象名称OBJ_NAME...

【专利技术属性】
技术研发人员:李奔李耀彭磊杨志文
申请(专利权)人:武汉众邦银行股份有限公司
类型:发明
国别省市:湖北;42

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

1