CN111414173A - 一种基于数据库存储过程的自动部署方法 - Google Patents
一种基于数据库存储过程的自动部署方法 Download PDFInfo
- Publication number
- CN111414173A CN111414173A CN202010369228.3A CN202010369228A CN111414173A CN 111414173 A CN111414173 A CN 111414173A CN 202010369228 A CN202010369228 A CN 202010369228A CN 111414173 A CN111414173 A CN 111414173A
- Authority
- CN
- China
- Prior art keywords
- failure
- updated
- name
- small
- small version
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及信息技术领域,提供了一种基于数据库存储过程的自动部署方法。其主旨在于实现自动部署,其主要方案为:将各个小版本的安装包上传到各自唯一对应的指定目录得到小版本号;循环对每个小版本进行处理,读取小版本待更新内容控制文件,得到对象清单;通过对象清单为约束条件,逐条备份要更新的对象,然后再更新小版本,其他程序与更新对象存在调用关系的标记为失效包;检查失效包,如果无失效包则处理完成;如果有失效包,进行步骤5;for循环逐笔对失效包进行编译,完成整个部署。
Description
技术领域
本发明涉及信息技术领域,提供了一种基于数据库存储过程的自动部署方法。
背景技术
技术背景
目前众邦银行核心系统版本发布时间长,人工操作步骤较多,对更新的内容需要手工备份,对操作人员专业知识要求非常高,操作风险较大。
业务背景
由于核心系统是关键业务系统,系统发版期间,对客服务暂停,原有的人工操作步骤较多,耗时较长,直接造成对客服务时间减少,影响客户体验。
发明内容
本发明的目的在于解决现有核心系统版本发布时间长,人工操作步骤较多,对更新的内容需要手工备份,对操作人员专业知识要求非常高,操作风险较大的技术问题。
为解决上述技术问题,本发明采用以下技术方案:
一种基于数据库存储过程的自动部署方案,包括以下步骤:
步骤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语句“select text from user_source where type=’$OBJ_TYPE’ and name=’$OBJ_NAME’ order by line”,将执行的结果文件重定向保存到备份目录。
更新执行“sqlplus –s 用户名/密码@实例@$CTRL_FILE”
步骤4:检查失效包,如果无失效包则处理完成;如果有失效包,进行步骤5;
以oracle数据库为例,检查失效包使用sqlplus执行sql语句“select count(*) fromdba_objects where owner=’用户名’ and status=’INVALID’ ”,查询结果为0,则无失效包;大于0,则有失效包,需要生成失效包清单,执行sql语句“select object_type,object_name from dba_objects where owner=’用户名’ and status=’INVALID’”生成失效包清单的失效对象类型INOBJ_TYPE及对象名称INOBJ_NAME。
步骤5:for循环逐笔对失效包进行编译,完成整个部署。
for循环逐笔对失效包进行编译。以oracle数据库为例,编译失效包使用sqlplus工具,如果失效包类型是package body,执行sql语句“alter pakeage $INOBJ_NAMEcomplie body”;其他类型,执行sql语句“alter $INOBJ_TYPE $INOBJ_NAME complie”。
Claims (2)
1.一种基于数据库存储过程的自动部署方案,包括以下步骤:
步骤1:将各个小版本的安装包上传到各自唯一对应的指定目录,并将对应的小版本安装包的目录名设置为小版本号;
步骤2:for循环对每个小版本进行处理,读取小版本待更新内容控制文件,得到包含控制文件名称CTRL_FILE、对象类型OBJ_TYPE及对象名称OBJ_NAME的对象清单;
步骤3:通过对象清单的对象类型OBJ_TYPE及对象名称OBJ_NAME为约束条件,逐条备份要更新的对象,然后再更新小版本,其他程序与更新对象存在调用关系的,如调用关系发生变化,则将对应的其他程序标记为失效包;
步骤4:检查失效包,如果无失效包则处理完成;如果有失效包,进行步骤5;
步骤5:for循环逐笔对失效包进行编译,完成整个部署。
2.根据权利要求1所述的一种基于数据库存储过程的自动部署方案,其特征在于:包括以下步骤:控制文件为小版本需更新的对象执行顺序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010369228.3A CN111414173B (zh) | 2020-05-04 | 2020-05-04 | 一种基于数据库存储过程的自动部署方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010369228.3A CN111414173B (zh) | 2020-05-04 | 2020-05-04 | 一种基于数据库存储过程的自动部署方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111414173A true CN111414173A (zh) | 2020-07-14 |
CN111414173B CN111414173B (zh) | 2023-08-11 |
Family
ID=71492291
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010369228.3A Active CN111414173B (zh) | 2020-05-04 | 2020-05-04 | 一种基于数据库存储过程的自动部署方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111414173B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030069902A1 (en) * | 2001-10-05 | 2003-04-10 | Ibm | Method of maintaining data consistency in a loose transaction model |
CA2422682A1 (en) * | 2002-03-20 | 2003-09-20 | Bestbuy.Com, Llc | Software building and deployment system and method |
US20030182652A1 (en) * | 2001-12-21 | 2003-09-25 | Custodio Gabriel T. | Software building and deployment system and method |
CN102054050A (zh) * | 2011-01-30 | 2011-05-11 | 天津神舟通用数据技术有限公司 | 神通数据库的包机制的实现方法 |
CN104618166A (zh) * | 2015-02-16 | 2015-05-13 | 中国农业银行股份有限公司 | 应用服务部署方法、装置及系统 |
CN108491214A (zh) * | 2018-02-08 | 2018-09-04 | 北京中科江南信息技术股份有限公司 | 应用系统升级部署的管理方法和管理系统 |
US20190163348A1 (en) * | 2017-11-30 | 2019-05-30 | Schneider Electric Software, Llc | Relationship visualizations for multi-dimensional data models |
CN111026424A (zh) * | 2019-12-10 | 2020-04-17 | 中国银行股份有限公司 | 一种服务更新方法及装置 |
-
2020
- 2020-05-04 CN CN202010369228.3A patent/CN111414173B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030069902A1 (en) * | 2001-10-05 | 2003-04-10 | Ibm | Method of maintaining data consistency in a loose transaction model |
US20030182652A1 (en) * | 2001-12-21 | 2003-09-25 | Custodio Gabriel T. | Software building and deployment system and method |
CA2422682A1 (en) * | 2002-03-20 | 2003-09-20 | Bestbuy.Com, Llc | Software building and deployment system and method |
CN102054050A (zh) * | 2011-01-30 | 2011-05-11 | 天津神舟通用数据技术有限公司 | 神通数据库的包机制的实现方法 |
CN104618166A (zh) * | 2015-02-16 | 2015-05-13 | 中国农业银行股份有限公司 | 应用服务部署方法、装置及系统 |
US20190163348A1 (en) * | 2017-11-30 | 2019-05-30 | Schneider Electric Software, Llc | Relationship visualizations for multi-dimensional data models |
CN108491214A (zh) * | 2018-02-08 | 2018-09-04 | 北京中科江南信息技术股份有限公司 | 应用系统升级部署的管理方法和管理系统 |
CN111026424A (zh) * | 2019-12-10 | 2020-04-17 | 中国银行股份有限公司 | 一种服务更新方法及装置 |
Non-Patent Citations (2)
Title |
---|
彭秋生;: "一种PL/SQL程序包失效的解决方案", vol. 22, no. 23, pages 2 * |
水坚石青: "PLSQL简介", pages 1, Retrieved from the Internet <URL:https://blog.csdn.net/helongqiang/article/details/84503570?> * |
Also Published As
Publication number | Publication date |
---|---|
CN111414173B (zh) | 2023-08-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8484644B2 (en) | Auto-restart processing in an IMS batch application | |
US20080162587A1 (en) | Server synchronization for maintenance activities | |
US8689179B2 (en) | Transportable refactoring object | |
CN107391968B (zh) | 一种实现私有pod发布权限控制的方法及装置 | |
CN106469068B (zh) | 应用程序的部署方法及系统 | |
CN110673858B (zh) | 一种基于ssh免密登录协议的轻量级部署方法 | |
US7831968B1 (en) | Method and system for restoring software | |
CN113434158B (zh) | 一种大数据组件的自定义管理方法、装置、设备及介质 | |
US20050278397A1 (en) | Method and apparatus for automated redundant data storage of data files maintained in diverse file infrastructures | |
US7703097B2 (en) | Auto-commit processing in an IMS batch application | |
US7840955B1 (en) | Method and system for restoring software | |
CN111240891A (zh) | 基于数据库多表间数据一致性的数据恢复方法及装置 | |
CN111414173A (zh) | 一种基于数据库存储过程的自动部署方法 | |
CN114895943A (zh) | 一种应用配置增量分发与自动升级的实现方法与装置 | |
US20210200536A1 (en) | Drug research and development software repository and software package management system | |
CN111124370A (zh) | 一种数据处理方法及相关设备 | |
US11748211B2 (en) | Automatic update of network assets using gold images | |
US8150821B2 (en) | System and method for using generic utilities to perform database utilities on mainframe operated DB2 databases | |
CN109240743B (zh) | 一种利用特定标签来进行代码切换的方法 | |
GB2486914A (en) | Source code control of relational databases | |
CN118426935B (zh) | 一种基于adf的企业级数据仓库作业的统一调度方法与系统 | |
CN111897794A (zh) | 数据库的维护方法、装置、电子设备和存储介质 | |
US20130091107A1 (en) | Command interpreter | |
CN112052225B (zh) | 一种db2数据库静态嵌入式sql绑定优雅部署方法 | |
CN117827797A (zh) | JHipster和Liquibase数据库管理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |