CN107145570B - 基于数据库服务架构维护服务器的方法及系统 - Google Patents

基于数据库服务架构维护服务器的方法及系统 Download PDF

Info

Publication number
CN107145570B
CN107145570B CN201710312305.XA CN201710312305A CN107145570B CN 107145570 B CN107145570 B CN 107145570B CN 201710312305 A CN201710312305 A CN 201710312305A CN 107145570 B CN107145570 B CN 107145570B
Authority
CN
China
Prior art keywords
server
plug
database service
service architecture
maintenance
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.)
Active
Application number
CN201710312305.XA
Other languages
English (en)
Other versions
CN107145570A (zh
Inventor
吴宙旭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Ctrip Business Co Ltd
Original Assignee
Shanghai Ctrip Business Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Ctrip Business Co Ltd filed Critical Shanghai Ctrip Business Co Ltd
Priority to CN201710312305.XA priority Critical patent/CN107145570B/zh
Publication of CN107145570A publication Critical patent/CN107145570A/zh
Application granted granted Critical
Publication of CN107145570B publication Critical patent/CN107145570B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于数据库服务架构维护服务器的方法及系统,所述方法包括:根据输入的待维护服务器的名称和采集的待维护服务器的第一基础信息确定数据库服务架构;所述数据库服务架构包括群集、AG、镜像或负载均衡;通过所述数据库服务架构和维护命令的类型生成变更工艺的主维护流程;根据维护命令的类型将所述变更工艺分配至运行在待维护服务器上的相应插件。与现有技术相比,本发明根据待维护服务器的名称和第一基础信息确定数据库服务器架构,并基于不同的数据库服务架构以及不同的维护命令生成不同的变更工艺,以及将变更工艺分配至相应的插件中,以实现自动化地维护数据库,不仅提高了维护的效率,同时也提升了维护的准确度。

Description

基于数据库服务架构维护服务器的方法及系统
技术领域
本发明涉及服务器领域,特别涉及一种基于数据库服务架构维护服务器的方法及系统。
背景技术
目前,基于SQL Server数据库服务及其服务器的运维工作,主要步骤是通过人工判断数据库服务所存在的环境和架构制定符合规范的工艺、多人审核无操作风险后、在凌晨订单量较少的窗口人工实施,由于从制定任务到实施的环节较为复杂,市场上也并无此类工具,其所存在的问题如下:
1、变更工艺难确定:由于不同数据库服务的架构及其他环境变量较复杂、故在确定工艺前需要对不同架构及其他环境变量进行细致的考量;
2、工作量较大:数据库服务的运维工艺一般操作步骤都在50~60步,从前期的准备工作,到人工复核,再到最后的实施阶段,单人每周最多完成1~2台;
3、错误率较高:由于维护工艺较为复杂、变量较多,从准备工作到实施工作,容易引发各种错误,而数据库服务直接影响到各业务环节,稍有疏忽就容易引起生产服务器故障,影响各业务订单。
以上这些问题不仅带来巨大的人工消耗,也会给生产环境增加很多风险。
发明内容
本发明要解决的技术问题是为了克服现有技术中人工维护服务器存在变更工艺难确定、工作量较大以及错误率较高等的缺陷,提供一种自动化的基于数据库服务架构维护服务器的方法及系统。
本发明是通过下述技术方案来解决上述技术问题的:
一方面,本发明提供一种基于数据库服务架构维护服务器的方法,其特点在于,包括以下步骤:
根据输入的待维护服务器的名称和采集的待维护服务器的第一基础信息确定数据库服务架构;其中,所述第一基础信息包括服务的系统视图、系统动态视图、服务器集群信息及群集管理器信息,所述数据库服务架构包括群集、AG(一种数据库服务架构)、镜像或负载均衡;
通过所述数据库服务架构和维护命令的类型生成变更工艺的主维护流程;
根据所述维护命令的类型将所述变更工艺分配至运行在所述待维护服务器上的相应插件。
较佳地,分配所述变更工艺的步骤之前,还包括:获取所述数据库服务架构中待维护服务器的第二基础信息,并根据所述第二基础信息生成变更工艺的次维护流程;
其中,所述第二基础信息包括复制分发、负载均衡IP、群集虚IP、AGListener。
较佳地,所述方法还包括:
按照预设条件对所述变更工艺进行调整;
根据调整部分重新获取第一和第二基础信息;
根据重新获取的第一和第二基础信息重新生成变更工艺,并分配至相应插件。
较佳地,所述方法还包括:所述插件在运行的同时以同步或异步的方式将所述维护命令的执行结果和日志回调。
较佳地,所述维护命令的类型包括SALT类命令、CMD类命令、TSQL及SP类命令以及第三方插件类命令;和/或,
所述插件的类型包括SALT插件、CMD插件、DB插件以及WEBINFO插件。
另一方面,本发明提供一种基于数据库服务架构维护服务器的系统,其特点在于,包括数据库服务架构确定引擎、变更工艺生成引擎以及任务调度引擎:
所述数据库服务架构确定引擎用于根据输入的待维护服务器的名称和采集的待维护服务器的第一基础信息确定数据库服务架构;其中,所述第一基础信息包括服务的系统视图、系统动态视图、服务器集群信息及群集管理器信息,所述数据库服务架构包括群集、AG、镜像或负载均衡;
所述变更工艺生成引擎用于通过所述数据库服务架构和维护命令的类型生成变更工艺的主维护流程,并将所述变更工艺分配至所述任务调度引擎;
所述任务调度引擎用于根据所述维护命令的类型将所述变更工艺分配至运行在所述待维护服务器上的相应的插件。
较佳地,所述变更工艺生成引擎还用于获取所述数据库服务架构中待维护服务器的第二基础信息,并根据所述第二基础信息生成变更工艺的次维护流程;
其中,所述第二基础信息包括复制分发、负载均衡IP、群集虚IP、AGListener。
较佳地,所述系统还包括变更工艺调整引擎,用于按照预设条件对所述变更工艺进行调整,并调用所述数据库服务架构确定引擎和所述变更工艺生成引擎。
较佳地,所述插件用于在运行的同时以同步或异步的方式将所述维护命令的执行结果和日志回调至所述任务调度引擎。
较佳地,所述维护命令的类型包括SALT类命令、CMD类命令、TSQL及SP类命令以及第三方插件类命令;和/或,
所述插件的类型包括SALT插件、CMD插件、DB插件以及WEBINFO插件。
在符合本领域常识的基础上,上述各优选条件,可任意组合,即得本发明各较佳实例。
本发明的积极进步效果在于:与现有技术相比,本发明根据待维护服务器的名称和第一基础信息确定数据库服务器架构,并基于不同的数据库服务架构以及不同的维护命令生成不同的变更工艺,以及将变更工艺分配至相应的插件中,以实现自动化地维护数据库,不仅提高了维护的效率,同时也提升了维护的准确度。
附图说明
图1为本发明实施例的基于数据库服务架构维护服务器的方法流程图。
图2为本发明实施例的数据库服务器架构的确定方法流程图。
图3为本发明实施例的基于数据库服务架构维护服务器的系统的结构框图。
具体实施方式
下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
本实施例提供一种基于数据库服务架构维护服务器的方法,如图1所示,包括以下步骤:
步骤101、根据输入的待维护服务器的名称和采集的待维护服务器的第一基础信息确定数据库服务架构。在可选的一种实施方式中,DBA通过UI界面输入待维护服务器的名称,例如为SVR1234HP580。
其中,所述第一基础信息包括服务的系统视图、系统动态视图(DMV)、服务器集群信息(WebInfo)及群集管理器信息(Cluster Command)等。所述数据库服务架构包括群集、AG、镜像或负载均衡。
在可选的一种实施方式中,根据待维护服务器的名称(CICODE)获取如实例的域名,登陆服务本身采集待维护服务器的第一基础信息,并根据如图2的算法确定出数据库服务器架构。
步骤102、通过所述数据库服务架构和维护命令的类型生成变更工艺的主维护流程。其中,所述维护命令的类型包括SALT类命令、CMD类命令、TSQL及SP类命令以及第三方插件类命令。
不同的数据库服务架均有不同的维护特点,例如AG架构,其主维护流程就是需要对维护服务器在SQLServer服务层面做AG切换,并校验切换后读写双方的数据库是否能正常工作提供对应的读写服务,其余的数据库架构也均有不同的维护特点,通过数据库服务器架构生成满足各自架构的变更工艺。
在可选的一种实施方式中,变更工艺包括主维护流程和次维护流程,其中,次维护流程的生成步骤为:获取所述数据库服务架构中待维护服务器的第二基础信息,并根据所述第二基础信息生成变更工艺的次维护流程。
其中,所述第二基础信息包括复制分发、负载均衡IP、群集虚IP、AGListener。
在可选的一种实施方式中,以次维护流程先于主维护流程开始,后于主维护流程结束来确保全程不影响任何工艺。
生成主维护流程后结合次维护流程最终生成一套可以预定义执行的流程,即变更工艺。以负载均衡架构打补丁为例,其主维护流程有四步:拉出负载均衡、完成补丁维护、重启服务器、拉入负载均衡。其中会影响到提供外部服务的步骤为拉出负载均衡和拉入负载均衡,影响到服务本身的为完成补丁维护和重启服务器。其中次维护流程中会影响到外部服务的复制分发暂停和恢复步骤,需先于主维护流程的拉出负载均衡和拉入负载均衡,会影响到服务本身的服务作业需要在完成补丁维护和重启服务器后执行,总结下就是次维护流程要依据影响的范围置于主维护流程外执行,确保业务不受影响。
步骤103、根据所述维护命令的类型将所述变更工艺分配至运行在所述待维护服务器上的相应插件。
所述插件的类型包括SALT插件、CMD插件、DB插件以及WEBINFO插件。其中,SALT插件主要负责远程执行预定义复杂运维脚本,例如安装补丁文件、重启服务器、检查群集资源状态等;CMD插件则为直连服务器执行信息查询类工作,例如Telenet端口等;DB插件则负责直连数据库端口,执行数据库命令,例如AG切换副本、检查应用程序账户是否可以正常连接数据库等。
在可选的一种实施方式中,步骤103中根据变更预定义时间及服务器负载情况选择合适的变更准备执行;待运行的变更所有步骤更新为待运行,并根据步骤先后依次执行;准备开始执行的步骤更新为运行中,并分配给各插件开始执行。
在可选的一种实施方式中,步骤执行成功则继续运行后续命令,命令运行失败会初始化该步骤,并重新获取该步骤所需服务器基础信息,重新执行,若失败次数大于3次以上,则将该变更刹车,并推送相关信息至变更实施人。
在可选的一种实施方式中,所述插件在运行的同时以同步或异步的方式将所述维护命令的执行结果和日志回调,方便后续命令进行执行。举个例子,CMD类命令为直连服务器生成的命令,并且执行可立即返回结果时,使用的为同步方法;SALT类命令需要依靠SALT宿主代理执行命令,为了避免宿主压力过大而采取异步的方式发送命令后异步回调结果。
其中,SALT插件用于对SALT类命令的执行结果和日志进行回调处理;CMD插件用于对CMD类命令的执行结果和日志进行回调处理;DB插件用于对TSQL及SP类命令的执行结果和日志进行回调处理;WEBINFO插件用于对第三方插件类命令的执行结果和日志进行回调处理。
在可选的一种实施方式中,上述步骤103之后还包括以下步骤:
按照预设条件对所述变更工艺进行调整;
根据调整部分重新获取第一和第二基础信息;
根据重新获取的第一和第二基础信息重新生成变更工艺,并分配至相应插件。
例如,某服务器在完成补丁维护的同时,需要对SQLServer进行升级,则可以对变更工艺进行调整,具体地,自定义添加SQLServer升级步骤等。
与现有技术相比,本实施例根据待维护服务器的名称和采集的服务器基础信息确定数据库服务器架构,并基于不同的数据库服务架构以及不同的维护命令生成不同的变更工艺,以及将变更工艺分配至相应的插件中,以实现自动化地维护数据库,不仅提高了维护的效率,同时也提升了维护的准确度。
具体体现在以下三个方面:
第一、智能生成变更工艺。根据不同的数据库服务及其存在的各种变量,有一套对数据库服务架构及其存在变量的评估方法,工具会基于该方法生成一套属于该服务特性的维护方案,省却了人工收集核对信息,考量风险等步骤。
第二、自动化完成变更。变更工艺制定完成后,会结合预定任务执行时间和服务器当前负载是否在可实施窗口内一步步自动执行各项变更操作。
第三、容错处理。实施变更的过程中,系统会再一次核对相关信息,并实施相关操作,在遇到错误时,会有主动重试、信息校验、主动中断、后续重试、人工排障、中断操作等工艺来保护本次变更操作在一个可控、安全的区域内进行。
本实施例还提供一种基于数据库服务架构维护服务器的系统30,如图3所示,包括数据库服务架构确定引擎31、变更工艺生成引擎32以及任务调度引擎33。
数据库服务架构确定引擎31用于根据输入的待维护服务器的名称和采集的待维护服务器的第一基础信息确定数据库服务架构;其中,所述第一基础信息包括服务的系统视图、系统动态视图、服务器集群信息及群集管理器信息,所述数据库服务架构包括群集、AG、镜像或负载均衡。
变更工艺生成引擎32用于通过所述数据库服务架构和维护命令的类型生成变更工艺的主维护流程,并将所述变更工艺分配至任务调度引擎33。其中,所述维护命令的类型包括SALT类命令、CMD类命令、TSQL及SP类命令以及第三方插件类命令。
任务调度引擎33用于根据所述维护命令的类型将所述变更工艺分配至运行在所述待维护服务器上的相应的插件。其中,所述插件的类型包括SALT插件、CMD插件、DB插件以及WEBINFO插件。
在可选的一种实施方式中,所述插件用于在运行的同时以同步或异步的方式将所述维护命令的执行结果和日志回调至所述任务调度引擎。
在可选的一种实施方式中,上述变更工艺生成引擎还用于获取所述数据库服务架构中待维护服务器的第二基础信息,并根据所述第二基础信息生成变更工艺的次维护流程。其中,所述第二基础信息包括复制分发、负载均衡IP、群集虚IP、AGListener。
在可选的一种实施方式中,上述系统还包括变更工艺调整引擎,用于按照预设条件对所述变更工艺进行调整,并调用上述数据库服务架构确定引擎和上述变更工艺生成引擎。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这些仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。

Claims (10)

1.一种基于数据库服务架构维护服务器的方法,其特征在于,包括以下步骤:
根据输入的待维护服务器的名称和采集的待维护服务器的第一基础信息确定数据库服务架构;其中,所述第一基础信息包括服务的系统视图、系统动态视图、服务器集群信息及群集管理器信息,所述数据库服务架构包括群集、AG、镜像或负载均衡;
通过所述数据库服务架构和维护命令的类型生成变更工艺的主维护流程;
根据所述维护命令的类型将所述变更工艺分配至运行在所述待维护服务器上的相应插件。
2.如权利要求1所述的方法,其特征在于,分配所述变更工艺的步骤之前,还包括:获取所述数据库服务架构中待维护服务器的第二基础信息,并根据所述第二基础信息生成变更工艺的次维护流程;
其中,所述第二基础信息包括复制分发、负载均衡IP、群集虚IP、AGListener。
3.如权利要求2所述的方法,其特征在于,所述方法还包括:
按照预设条件对所述变更工艺进行调整;
根据调整部分重新获取第一和第二基础信息;
根据重新获取的第一和第二基础信息重新生成变更工艺,并分配至相应插件。
4.如权利要求1所述的方法,其特征在于,所述方法还包括:所述插件在运行的同时以同步或异步的方式将所述维护命令的执行结果和日志回调。
5.如权利要求1所述的方法,其特征在于,
所述维护命令的类型包括SALT类命令、CMD类命令、TSQL及SP类命令以及第三方插件类命令;和/或,
所述插件的类型包括SALT插件、CMD插件、DB插件以及WEBINFO插件。
6.一种基于数据库服务架构维护服务器的系统,其特征在于,包括数据库服务架构确定引擎、变更工艺生成引擎以及任务调度引擎:
所述数据库服务架构确定引擎用于根据输入的待维护服务器的名称和采集的待维护服务器的第一基础信息确定数据库服务架构;其中,所述第一基础信息包括服务的系统视图、系统动态视图、服务器集群信息及群集管理器信息,所述数据库服务架构包括群集、AG、镜像或负载均衡;
所述变更工艺生成引擎用于通过所述数据库服务架构和维护命令的类型生成变更工艺的主维护流程,并将所述变更工艺分配至所述任务调度引擎;
所述任务调度引擎用于根据所述维护命令的类型将所述变更工艺分配至运行在所述待维护服务器上的相应的插件。
7.如权利要求6所述的系统,其特征在于,所述变更工艺生成引擎还用于获取所述数据库服务架构中待维护服务器的第二基础信息,并根据所述第二基础信息生成变更工艺的次维护流程;
其中,所述第二基础信息包括复制分发、负载均衡IP、群集虚IP、AGListener。
8.如权利要求7所述的系统,其特征在于,所述系统还包括变更工艺调整引擎,用于按照预设条件对所述变更工艺进行调整,并调用所述数据库服务架构确定引擎和所述变更工艺生成引擎。
9.如权利要求6所述的系统,其特征在于,所述插件用于在运行的同时以同步或异步的方式将所述维护命令的执行结果和日志回调至所述任务调度引擎。
10.如权利要求6所述的系统,其特征在于,
所述维护命令的类型包括SALT类命令、CMD类命令、TSQL及SP类命令以及第三方插件类命令;和/或,
所述插件的类型包括SALT插件、CMD插件、DB插件以及WEBINFO插件。
CN201710312305.XA 2017-05-05 2017-05-05 基于数据库服务架构维护服务器的方法及系统 Active CN107145570B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710312305.XA CN107145570B (zh) 2017-05-05 2017-05-05 基于数据库服务架构维护服务器的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710312305.XA CN107145570B (zh) 2017-05-05 2017-05-05 基于数据库服务架构维护服务器的方法及系统

Publications (2)

Publication Number Publication Date
CN107145570A CN107145570A (zh) 2017-09-08
CN107145570B true CN107145570B (zh) 2020-09-22

Family

ID=59776963

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710312305.XA Active CN107145570B (zh) 2017-05-05 2017-05-05 基于数据库服务架构维护服务器的方法及系统

Country Status (1)

Country Link
CN (1) CN107145570B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108376142B (zh) * 2018-01-10 2021-05-14 北京思特奇信息技术股份有限公司 一种分布式内存数据库数据同步方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103400246A (zh) * 2013-08-23 2013-11-20 中国科学院合肥物质科学研究院 一种基于云架构的核电厂风险监测系统及监测方法
CN104361030A (zh) * 2014-10-24 2015-02-18 西安未来国际信息股份有限公司 一种具有任务分发功能的分布式缓存架构及缓存方法
CN104731580A (zh) * 2015-01-12 2015-06-24 上海新炬网络信息技术有限公司 基于Karaf与ActiveMQ的自动化运维系统及其实现方法
CN105119913A (zh) * 2015-08-13 2015-12-02 东南大学 一种基于Docker的Web服务器架构及各模块之间的交互方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8682049B2 (en) * 2012-02-14 2014-03-25 Terarecon, Inc. Cloud-based medical image processing system with access control
US9747421B2 (en) * 2014-02-10 2017-08-29 Picofemto LLC Multi-factor brain analysis via medical imaging decision support systems and methods

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103400246A (zh) * 2013-08-23 2013-11-20 中国科学院合肥物质科学研究院 一种基于云架构的核电厂风险监测系统及监测方法
CN104361030A (zh) * 2014-10-24 2015-02-18 西安未来国际信息股份有限公司 一种具有任务分发功能的分布式缓存架构及缓存方法
CN104731580A (zh) * 2015-01-12 2015-06-24 上海新炬网络信息技术有限公司 基于Karaf与ActiveMQ的自动化运维系统及其实现方法
CN105119913A (zh) * 2015-08-13 2015-12-02 东南大学 一种基于Docker的Web服务器架构及各模块之间的交互方法

Also Published As

Publication number Publication date
CN107145570A (zh) 2017-09-08

Similar Documents

Publication Publication Date Title
US20220261419A1 (en) Provisioning and managing replicated data instances
US9223985B2 (en) Risk assessment of changing computer system within a landscape
US9602422B2 (en) Implementing fixed points in network state updates using generation numbers
US9875133B2 (en) Virtual machine disk image installation
CN112099918A (zh) 容器化环境中的集群的实时迁移
US20140081916A1 (en) Failover and recovery for replicated data instances
US10466998B2 (en) Model based upgrade campaign generation
CN107634860B (zh) 一种weblogic集群补丁批量自动升级方法
CN106657167B (zh) 管理服务器、服务器集群、以及管理方法
US20210089415A1 (en) High availability for a relational database management system as a service in a cloud platform
WO2015047969A1 (en) Master schema shared across multiple tenants with dynamic update
US8688644B1 (en) Systems and methods for performing recovery of directory data
CN113515499A (zh) 一种数据库服务方法及系统
CN108199901B (zh) 硬件报修方法、系统、设备、硬件管理服务器与存储介质
CN106130763A (zh) 服务器集群及适用于该集群的数据库资源组切换控制方法
CN112395047A (zh) 虚拟机故障疏散方法、系统及计算机可读介质
CN105260485A (zh) 一种数据加载的方法和装置
CN110063042A (zh) 一种数据库故障的响应方法及其终端
CN108804248B (zh) 一种卷实时保护数据的自动校验方法
CN107145570B (zh) 基于数据库服务架构维护服务器的方法及系统
CN105373631A (zh) 基于SQLSever的数据库结构自动升级方法
US20200233674A1 (en) Automatically configuring boot order in recovery operations
US20190268180A1 (en) Method and system for high availability topology for master-slave data systems with low write traffic
CN116149713A (zh) 一种树型异构网络下的各级设备的程序升级方法及装置
CN109656740A (zh) 一种支持超时处理任务流的方法

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