CN102867069A - 一种基于sql的数据库脚本执行方法及系统 - Google Patents
一种基于sql的数据库脚本执行方法及系统 Download PDFInfo
- Publication number
- CN102867069A CN102867069A CN2012103778523A CN201210377852A CN102867069A CN 102867069 A CN102867069 A CN 102867069A CN 2012103778523 A CN2012103778523 A CN 2012103778523A CN 201210377852 A CN201210377852 A CN 201210377852A CN 102867069 A CN102867069 A CN 102867069A
- Authority
- CN
- China
- Prior art keywords
- module
- script
- sql
- execution
- database
- 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.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及计算机技术领域,尤其涉及一种基于SQL的数据库脚本执行方法及系统,包括:调度模块发送指令至提取模块、执行模块、报告模块、发送模块,SQL脚本集合存储模块中的数据预读取至缓存脚本存储模块中,提取模块从缓存脚本存储模块中提取数据后执行模块执行指令任务,完成指令任务后在报告模块中生成报告文件,通过发送模块以邮件的形式将报告文件发送。本发明的有益效果在于:1.解决在维护大量数据库脚本时手动执行的可维护性差、升级难、易出错、效率低、专业性要求过高等问题;2.通过预读取任务,提高任务的执行效率;3.使用户可以自己定义脚本执行的顺序逻辑关系、是否并行执行。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种基于SQL的数据库脚本执行方法及系统。
背景技术
一般情况下执行存储过程、创建表、增加表字段、修改表字段、修改表中数据等任务,需要手工将一段一段SQL脚本复制到查询分析器中,然后再在查询分析器中分开执行,这些任务的执行要求人守着电脑,等上一段SQL执行成功后,再执行一下段SQL,这样反复执行直至全部维护结束。
现在有一些自动执行SQL脚本任务的方法及装置,如申请号为:200910235299的“脚本执行系统及方法”,通过定时读取任务信息生成任务后,从数据库中获取脚本信息、执行脚本信息,从而提高脚本的执行效率和自动化程度。但是这些方法与装置都存在着一些缺陷:
1.当需要执行的SQL脚本文件数量较多、且并发量较大时,由于是实时I/O文件读取,会由于读取效率不高的瓶颈存在会导致整个装置的执行效率降低;
2.不能设置各SQL脚本文件之间的执行顺序逻辑关系,比如有些SQL脚本是允许并行执行的,但有些SQL脚本的执行必须是在某些SQL脚本执行成功之后才能执行,而且如果前置的SQL脚本文件执行出错后,后续的SQL脚本文件是不允许再继续执行的;
3.对最终的执行情况只能事后人为自行去翻阅结果报告,装置不能主动的将结果报告自动的发送给相关干系人,导致相关干系人无法及时了解到最终的执行结果。
发明内容
本发明为克服上述的不足之处,目的在于提供一种基于SQL的数据库脚本执行方法及系统,解决在维护大量数据库脚本时手动执行的可维护性差、升级难、易出错、效率低、专业性要求过高等问题。
本发明是通过以下技术方案达到上述目的:一种基于SQL的数据库脚本执行方法,包括以下步骤:
1)预先编制好SQL执行语句,形成SQL脚本集合库;
2)建立数据库连接关系、各SQL脚本之间的逻辑关系和邮件关联,形成文件配置库;
3)调度模块输出预读取指令,提取模块接收预读取指令后将SQL脚本集合库中的数据提前预读取到缓存脚本库中;
4)调度模块输出缓存读取指令,提取模块接收缓存读取指令后从缓存脚本库中读取SQL脚本执行语句;
5)调度模块输出执行指令,执行模块根据SQL脚本执行语句对数据库进行相关操作;
6)调度模块输出生成执行报告指令,执行模块接收执行报告指令,对装置及每一项脚本服务的执行结果生成报告文件;
7)调度模块输出发送指令,发送模块接收发送指令并将报告文件以邮件形式发送。
作为优选,步骤1)中所述的SQL执行语句以XML文件形式储存。
作为优选,步骤2)中所述的文件配置库通过XML文件进行统一存储和管理。
作为优选,所述的文件配置库可以通过可视化界面直接进行设置。
作为优选,所述步骤7)的报告文件包括:设备运行日志、SQL脚本执行过程监测日志、SQL脚本执行结果报告。
一种基于SQL的数据库脚本执行系统,包括:脚本存储模块、配置模块、提取模块、调度模块、执行模块、报告模块、发送模块,脚本存储模块包括SQL脚本集合存储模块、缓存脚本存储模块,配置模块包括数据库连接配置模块、脚本执行规则调度配置模块、发送配置模块;调度模块发送指令至提取模块、执行模块、报告模块、发送模块,SQL脚本集合存储模块中的数据预读取至缓存脚本存储模块中,提取模块从缓存脚本存储模块中提取数据后执行模块执行指令任务,完成指令任务后在报告模块中生成报告文件,通过发送模块以邮件的形式将报告文件发送。
本发明的有益效果在于:1、解决在维护大量数据库脚本时手动执行的可维护性差、升级难、易出错、效率低、专业性要求过高等问题;2、通过预读取任务,提高任务的执行效率;3、使用户可以通过可视化、简便、易用方式自己定义脚本执行的顺序逻辑关系、是否并行执行,以满足自动化、高效率、过程跟踪、可控、执行结果及时反馈的脚本执行需求。
附图说明
图1是本发明方法的步骤示意图;
图2是本发明系统的结构示意图。
具体实施方式
下面结合具体实施例对本发明进行进一步描述,但本发明的保护范围并不仅限于此:
实施例1:如图1所示,一种基于SQL的数据库脚本执行方法,包括以下步骤:
1)预先编制好SQL执行语句,形成SQL脚本集合库,每一个以XML文件形式存储的SQL执行语句即为一项脚本服务,XML文件存储模板如下:
2)建立数据库连接关系、各SQL脚本之间的逻辑关系和邮件关联,分别存储到数据库连接配置模块、脚本执行规则调度配置模块、发送配置模块中,形成文件配置库,用于描述数据库之间、SQL脚本之间、邮件发送之间的连接关系和规则;
3)调度模块输出预读取指令,提取模块接收预读取指令后将SQL脚本集合库中的数据提前预读取到缓存脚本库中;
4)调度模块输出缓存读取指令,提取模块接收缓存读取指令后从缓存脚本库中读取SQL脚本执行语句;
5)调度模块输出执行指令,执行模块与数据库建立连接关系,根据SQL脚本执行语句对数据库进行相关操作;
6)调度模块输出生成执行报告指令,执行模块接收执行报告指令,根据执行指令,生成报告文件:DeviceLog(设备运行日志)和RunLog(SQL脚本执行过程监测日志);
7)调度模块输出发送指令,发送模块接收发送指令并执行以下的XML文件,将报告文件以邮件的形式发送:
如图2所示,一种基于SQL的数据库脚本执行系统,包括:SQL脚本集合存储模块、缓存脚本存储模块、数据库连接配置模块、脚本执行规则调度配置模块、发送配置模块、提取模块、调度模块、执行模块、报告模块、发送模块;所述的SQL脚本集合存储模块存储SQL脚本集合库,缓存脚本存储模块存储缓存脚本库,数据库连接配置模块存储数据库连接关系数据,脚本执行规则调度配置模块存储各SQL脚本服务之间的逻辑关系,发送配置模块存储邮件关联数据。
调度模块发送指令至提取模块、执行模块、报告模块、发送模块,SQL脚本集合存储模块中的数据预读取至缓存脚本存储模块中,提取模块从缓存脚本存储模块中提取数据后执行模块执行指令任务,完成指令任务后在报告模块中生成报告文件,通过发送模块以邮件的形式将报告文件发送。
以上的所述乃是本发明的具体实施例及所运用的技术原理,若依本发明的构想所作的改变,其所产生的功能作用仍未超出说明书及附图所涵盖的精神时,仍应属本发明的保护范围。
Claims (6)
1.一种基于SQL的数据库脚本执行方法,其特征在于包括以下步骤:
1)预先编制好SQL执行语句,形成SQL脚本集合库;
2)建立数据库连接关系、各SQL脚本之间的逻辑关系和邮件关联,形成文件配置库;
3)调度模块输出预读取指令,提取模块接收预读取指令后将SQL脚本集合库中的数据提前预读取到缓存脚本库中;
4)调度模块输出缓存读取指令,提取模块接收缓存读取指令后从缓存脚本库中读取SQL脚本执行语句;
5)调度模块输出执行指令,执行模块根据SQL脚本执行语句对数据库进行相关操作;
6)调度模块输出生成执行报告指令,执行模块接收执行报告指令,对装置及每一项脚本服务的执行结果生成报告文件;
7)调度模块输出发送指令,发送模块接收发送指令并将报告文件以邮件形式发送。
2.根据权利要求1所述的一种基于SQL的数据库脚本执行方法,其特征在于步骤1)中所述的SQL执行语句以XML文件形式储存。
3.根据权利要求1所述的一种基于SQL的数据库脚本执行方法,其特征在于步骤2)中所述的文件配置库通过XML文件进行统一存储和管理。
4.根据权利要求3所述的一种基于SQL的数据库脚本执行方法,其特征在于所述的文件配置库可以通过可视化界面直接进行设置。
5.根据权利要求1所述的一种基于SQL的数据库脚本执行方法,其特征在于所述步骤7)的报告文件包括:设备运行日志、SQL脚本执行过程监测日志、SQL脚本执行结果报告。
6.一种基于SQL的数据库脚本执行系统,其特征在于包括:脚本存储模块、配置模块、提取模块、调度模块、执行模块、报告模块、发送模块,脚本存储模块包括SQL脚本集合存储模块、缓存脚本存储模块,配置模块包括数据库连接配置模块、脚本执行规则调度配置模块、发送配置模块;调度模块发送指令至提取模块、执行模块、报告模块、发送模块,SQL脚本集合存储模块中的数据预读取至缓存脚本存储模块中,提取模块从缓存脚本存储模块中提取数据后执行模块执行指令任务,完成指令任务后在报告模块中生成报告文件,通过发送模块以邮件的形式将报告文件发送。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012103778523A CN102867069A (zh) | 2012-09-28 | 2012-09-28 | 一种基于sql的数据库脚本执行方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012103778523A CN102867069A (zh) | 2012-09-28 | 2012-09-28 | 一种基于sql的数据库脚本执行方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102867069A true CN102867069A (zh) | 2013-01-09 |
Family
ID=47445938
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012103778523A Pending CN102867069A (zh) | 2012-09-28 | 2012-09-28 | 一种基于sql的数据库脚本执行方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102867069A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104866581A (zh) * | 2015-05-26 | 2015-08-26 | 北京奇虎科技有限公司 | 数据库的管理方法及装置 |
CN106021071A (zh) * | 2016-05-04 | 2016-10-12 | 北京思特奇信息技术股份有限公司 | 一种监控sql运行过程的方法和系统 |
CN106569783A (zh) * | 2015-10-08 | 2017-04-19 | 腾讯科技(深圳)有限公司 | 一种执行任务脚本的方法和装置 |
CN106611222A (zh) * | 2016-12-27 | 2017-05-03 | 北京奇艺世纪科技有限公司 | 一种通用任务管理方法及系统 |
CN107818102A (zh) * | 2016-09-12 | 2018-03-20 | 平安科技(深圳)有限公司 | 数据提取方法和装置 |
CN109814864A (zh) * | 2019-01-02 | 2019-05-28 | 北京永洪商智科技有限公司 | 一种数据可视化方法、可视化系统、网页浏览系统和设备 |
CN110619015A (zh) * | 2019-09-20 | 2019-12-27 | 中国银行股份有限公司 | 支持大表的数据库系统的数据自动提取方法及系统 |
CN110914842A (zh) * | 2017-07-18 | 2020-03-24 | 西门子股份公司 | 用于机器的自动维护的方法和系统 |
CN111381860A (zh) * | 2020-04-02 | 2020-07-07 | 众能联合数字技术有限公司 | 数据库sql脚本快速维护框架及方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101567006A (zh) * | 2009-05-25 | 2009-10-28 | 中兴通讯股份有限公司 | 一种数据库系统及分布式sql语句执行计划重用方法 |
CN101694626A (zh) * | 2009-09-30 | 2010-04-14 | 曙光信息产业(北京)有限公司 | 脚本执行系统及方法 |
CN102148870A (zh) * | 2011-03-07 | 2011-08-10 | 浪潮(北京)电子信息产业有限公司 | 一种云存储系统及其实现方法 |
CN102323945A (zh) * | 2011-09-02 | 2012-01-18 | 南京中兴力维软件有限公司 | 一种基于sql的数据库管理方法和装置 |
-
2012
- 2012-09-28 CN CN2012103778523A patent/CN102867069A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101567006A (zh) * | 2009-05-25 | 2009-10-28 | 中兴通讯股份有限公司 | 一种数据库系统及分布式sql语句执行计划重用方法 |
CN101694626A (zh) * | 2009-09-30 | 2010-04-14 | 曙光信息产业(北京)有限公司 | 脚本执行系统及方法 |
CN102148870A (zh) * | 2011-03-07 | 2011-08-10 | 浪潮(北京)电子信息产业有限公司 | 一种云存储系统及其实现方法 |
CN102323945A (zh) * | 2011-09-02 | 2012-01-18 | 南京中兴力维软件有限公司 | 一种基于sql的数据库管理方法和装置 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104866581A (zh) * | 2015-05-26 | 2015-08-26 | 北京奇虎科技有限公司 | 数据库的管理方法及装置 |
CN106569783A (zh) * | 2015-10-08 | 2017-04-19 | 腾讯科技(深圳)有限公司 | 一种执行任务脚本的方法和装置 |
CN106021071A (zh) * | 2016-05-04 | 2016-10-12 | 北京思特奇信息技术股份有限公司 | 一种监控sql运行过程的方法和系统 |
CN107818102A (zh) * | 2016-09-12 | 2018-03-20 | 平安科技(深圳)有限公司 | 数据提取方法和装置 |
CN107818102B (zh) * | 2016-09-12 | 2020-03-27 | 平安科技(深圳)有限公司 | 数据提取方法和装置 |
CN106611222A (zh) * | 2016-12-27 | 2017-05-03 | 北京奇艺世纪科技有限公司 | 一种通用任务管理方法及系统 |
CN110914842A (zh) * | 2017-07-18 | 2020-03-24 | 西门子股份公司 | 用于机器的自动维护的方法和系统 |
US11645631B2 (en) | 2017-07-18 | 2023-05-09 | Siemens Aktiengesellschaft | Method and system for automatic maintenance of a machine |
CN109814864A (zh) * | 2019-01-02 | 2019-05-28 | 北京永洪商智科技有限公司 | 一种数据可视化方法、可视化系统、网页浏览系统和设备 |
CN110619015A (zh) * | 2019-09-20 | 2019-12-27 | 中国银行股份有限公司 | 支持大表的数据库系统的数据自动提取方法及系统 |
CN111381860A (zh) * | 2020-04-02 | 2020-07-07 | 众能联合数字技术有限公司 | 数据库sql脚本快速维护框架及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102867069A (zh) | 一种基于sql的数据库脚本执行方法及系统 | |
KR101621137B1 (ko) | 아파치 하둡을 위한 로우 레이턴시 쿼리 엔진 | |
CN110908641B (zh) | 基于可视化的流计算平台、方法、设备和存储介质 | |
US8578216B2 (en) | Execution history tracing method | |
CN110134499A (zh) | 任务调度方法、任务调度系统、存储介质和计算机设备 | |
US10534700B2 (en) | Separating test verifications from test executions | |
CN112260877A (zh) | 基于ai的rpa机器人管理方法、平台及存储介质 | |
CN110471754A (zh) | 作业调度中的数据展示方法、装置、设备及存储介质 | |
CN106383701A (zh) | 基于通用多协议数据访问接口技术的数据服务系统 | |
CN103995778A (zh) | 一种基于事件和动作的脚本文件生成方法及其装置 | |
CN107832130A (zh) | 一种银行系统的作业流调度执行方法、装置及电子设备 | |
CN107798111B (zh) | 一种分布式环境中大批量导出数据的方法 | |
CN104991849A (zh) | 一种通过zabbix监控Linux进程占用系统资源的方法 | |
CN104298671B (zh) | 数据统计分析方法及装置 | |
CN102193831B (zh) | 一种建立层次化的映射/归约并行编程模型的方法 | |
CN112948096A (zh) | 一种批量调度方法、装置和设备 | |
CN103810258A (zh) | 基于数据仓库的数据汇聚调度方法 | |
CN103164776A (zh) | 一种药品追溯系统及其药品追溯方法和流程监控方法 | |
CN102393820A (zh) | 一种楼宇监控系统控制逻辑的实现方法 | |
CN104731900A (zh) | 一种Hive调度方法及装置 | |
CN105630997A (zh) | 一种数据并行处理方法、装置及设备 | |
CN114756375A (zh) | Gpu资源调度方法、系统、电子设备和存储介质 | |
US20170337644A1 (en) | Data driven invocation of realtime wind market forecasting analytics | |
US12045654B2 (en) | Memory management through control of data processing tasks | |
CN117056175B (zh) | 数据处理方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20130109 |