CN111813602A - 一种基于消息中间件的数据库异地备份与恢复方法及系统 - Google Patents

一种基于消息中间件的数据库异地备份与恢复方法及系统 Download PDF

Info

Publication number
CN111813602A
CN111813602A CN202010663422.2A CN202010663422A CN111813602A CN 111813602 A CN111813602 A CN 111813602A CN 202010663422 A CN202010663422 A CN 202010663422A CN 111813602 A CN111813602 A CN 111813602A
Authority
CN
China
Prior art keywords
backup
task
message middleware
webserver
message
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
Application number
CN202010663422.2A
Other languages
English (en)
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.)
Beijing Reliable Spectrum Cloud Technology Co ltd
Xiamen Biebeyun Co ltd
Original Assignee
Beijing Reliable Spectrum Cloud Technology Co ltd
Xiamen Biebeyun 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 Beijing Reliable Spectrum Cloud Technology Co ltd, Xiamen Biebeyun Co ltd filed Critical Beijing Reliable Spectrum Cloud Technology Co ltd
Priority to CN202010663422.2A priority Critical patent/CN111813602A/zh
Publication of CN111813602A publication Critical patent/CN111813602A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/547Messaging middleware

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于消息中间件的数据库异地备份与恢复方法及系统,数据库系统作为计算机信息系统的基础软件,其安全性问题十分重要。当计算机系统遭受到例如地震灾害或者式软硬件错误、人为操作性错误时,数据的丢失会为企业带来巨大损失,因此对于企业而言,数据的备份和恢复必须做到有备无患。本发明提出了一种可以在复杂网络环境下,将数据库文件备份至异地环境,并根据需要将异地备份文件恢复到指定数据库实例上的数据库备份和恢复方法和系统。

Description

一种基于消息中间件的数据库异地备份与恢复方法及系统
技术领域
本发明涉及数据备份领域,具体属于数据库的异地备份与恢复技术领域。
背景技术
随着数据库技术的不断发展,数据库的规模越来越大,其功能也越来越强大。伴随着信息技术的发展,整个社会的运作和前进都极大地依赖计算机信息系统。各种例如生产计划、物料资料、销售信息、客户资料、核心代码等数据作为企业或个人的重要资产也都存储在计算机系统中。
数据库系统作为计算机信息系统的基础软件,其安全性问题十分重要。当计算机系统遭受到例如地震灾害或者式软硬件错误、人为操作性错误时,数据的丢失会为企业带来巨大损失,因此对于企业而言,数据的备份和恢复必须做到有备无患。数据的容灾备份技术作为保障数据安全的最后一道屏障,已引起各行各业的广泛关注。数据备份的传统架构是由备份主服务器、介质服务器和客户端构成,备份主服务承担了备份资源的配置和管理,介质服务器连接存储设备,负责实际的读写操作,将最终的数据写入存储设备中,客服端接受备份主服务器的管理。面对复杂业务类型,上述传统架构由于缺乏灵活耦合性,难以满足异地备份和海量备份的需求。
发明内容
针对上述问题,本发明提出了一种可以在复杂网络环境下,将数据库文件备份至异地环境,并根据需要将异地备份文件恢复到指定数据库实例上的数据库备份和恢复方法和系统。
为达到上述目的,本发明提供了一种基于消息中间件的数据库异地备份与恢复方法及系统,技术方案具体如下:
由WebServer向消息中间件下发管理任务,并统计各种任务状态,及时反馈给管理员备份系统的处理情况;由消息中间件完成备份系统的解耦工作,接收WebServer下发的具体任务;由Agent监听消息中间件的变化,根据当前的任务状态及时从消息中间件获取待处理的任务消息,并将任务执行结果直接返回给WebServer。
进一步地,所述由Agent监听消息中间件变化,根据当前的任务状态及时从消息中间件获取待处理的任务消息,并将任务执行结果直接返回给WebServer具体包括:
S1、Supervisor进程管理,用于监听、启动、停止一个或多个进程,当一个进程意外杀死时Supervisor监听到进程异常后会自动重新拉起,从而实现进程的自动恢复;
S2、构建监听异步任务队列,能够及时发现WebServer平台下发的任务,将耗时的复杂操作通过消息的方式传递给目标机器,并放置在后台执行;
S3、执行异步任务,当Agent接收到异步任务后,可以进行两种操作,一种是为设置备份或恢复任务,另一种是对备份历史文件进行操作;
S4、异步任务操作完成后,将执行结果返回给WebServer平台。
进一步地,所述由消息中间件完成备份系统的解耦工作,接收WebServer下发的具体任务具体包括:该消息中间件基于Redis生产者消费者模式实现,使用BLPOP命令获取队列数据;如果队列中没有数据则阻塞等待-监听模式。
在消息中间件中,定义了任务入队方式,也定义了任务的超时时间,是否为异步任务,任务参数,为整个备份和恢复操作提高消息传递的基础。
为了进一步提高数据备份和恢复的灵活性,用户可以自定义设置备份模式,包括支持全量备份和增量备份;同时也支持同时备份或恢复多个文件服务器上的指定目标文件或目录。其中,增量备份是指在一次全量备份或者上一次增量备份后,以后每次备份只需要备份与前一次相比增加或者修改的文件。采用增量备份能够避免重复的数据被备份,并且减少备份数据,能够缩短备份所需时间。
本发明的另一方面,提供了一种基于消息中间件的数据库异地备份与恢复系统,包括WebServer、消息中间件和Agent。WebServer负责向消息中间件下发管理任务,并统计各种任务状态,及时反馈给管理员备份系统的处理情况;消息中间件负责完成备份系统的解耦工作,接收WebServer下发的具体任务;Agent负责监听消息中间件的变化,根据当前的任务状态及时从消息中间件获取待处理的任务消息,并将任务执行结果直接返回给WebServer。
附图说明
图1是根据本发明实施例所述的数据备份和恢复系统架构图。
有益效果
利用WebServer、消息中间件和Agent之间的交互方式,提高了数据备份和恢复的实时性,能够将数据库系统崩溃时恢复消耗的代价最小化,大大缩短故障恢复时间。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,根据本发明实施例所述的一种基于消息中间件的数据库异地备份与恢复系统,包括WebServer、消息中间件和Agent。WebServer负责向消息中间件下发任务,消息中间件接收异步任务,生成任务队列,Agent实时监听消息中间件的变化,并从消息中间件读取任务数据,向WebServer反馈任务执行结果;用户则通过WebServer实现对数据备份和恢复管理。
由WebServer向消息中间件下发管理任务,并统计各种任务状态,及时反馈给管理员备份系统的处理情况;由消息中间件完成备份系统的解耦工作,接收WebServer下发的具体任务;由Agent监听消息中间件的变化,根据当前的任务状态及时从消息中间件获取待处理的任务消息,并将任务执行结果直接返回给WebServer。
在Agent端,执行如下四个步骤:
1、Supervisor进程管理。用于监听、启动、停止一个或多个进程。可实现当一个进程意外杀死,supervisor监听到进程异常后,会自动重新拉起,从而实现进程的自动恢复功能。
2、监听异步任务队列。监听任务队列目的是为了能及时发现WebServer平台下发的任务,同时也是为了备份/恢复系统解耦,将耗时的复杂操作,通过消息的方式传递给目标机器,并放置在后台执行。具体代码如下:
Figure BDA0002579452180000051
Figure BDA0002579452180000061
3、执行异步任务。当Agent收到异步任务后,分为两种情况,一种是为设置备份/恢复任务;另一种是对备份历史文件进行操作。具体代码如下:
Figure BDA0002579452180000062
Figure BDA0002579452180000071
4、上报异步结果。异步任务在操作完成后,需要将会执行结果反馈给WebServer平台,具体代码如下:
Figure BDA0002579452180000072
Figure BDA0002579452180000081
在消息中间件端,基于Redis实现了生产者消费模式的消息中间件,主要使用blpop获取队列数据,如果队列中没有数据则阻塞等待-监听模式。从一了任务入队方式、超时时间(ttl),是否为异步任务(is_async),任务参数(args)等。为整个备份/恢复提高了消息传递的基础。
在WebServer端,主要包括API设计:备份策略设置API、上传备份记录API、数据库恢复API、备份结果API。
备份策略设置API,定义备份策略的具体情况,如:操作类型,备份模式,实例编号,数据库类型等。
上传备份记录API,定义了备份文件的具体内容,如备份文件大小,备份开始时间,备份结束文件,备份所在远程路径等。
数据库恢复API,定义了恢复文件对象,目标可用区,目标实例规格,目标实例容量等。
备份结果API,定义了备份记录的数据库类型,备份开始/结束时间,备份文件大小等。
本发明的另一实施例,提供了一种基于消息中间件的数据库异地备份与恢复系统,包括WebServer、消息中间件和Agent。WebServer负责向消息中间件下发管理任务,并统计各种任务状态,及时反馈给管理员备份系统的处理情况;消息中间件负责完成备份系统的解耦工作,接收WebServer下发的具体任务;Agent负责监听消息中间件的变化,根据当前的任务状态及时从消息中间件获取待处理的任务消息,并将任务执行结果直接返回给WebServer。
进一步地,该系统允许用户自定义备份策略和数据恢复策略,用户能够通过配置界面对数据库实例进行自定义备份策略设置,包括数据保留周期、备份间隔、备份的具体对象、备份方式、是否对日志进行备份、备份目录在内。对于每一次备份任务,都以可视化的方式进行备份开始时间、备份结束时间、备份文件大小、本分方式在内的信息展示。用户可以根据已有的备份任务,将备份文件恢复到指定的可用区或物理机,同时也支持VPC、子网和实例规格的修改操作。
为了能够进一步提高数据的安全性,WebServer端还包括用户的权限管理功能,对于不同类型的用户分配不同的操作权限,用户类型包括普通用户和管理员用户;普通用户能够进行自定义备份策略设置和备份任务的浏览查看;管理员用户能够根据已有的备份任务进行数据恢复操作。这样不仅保证了对数据备份的及时性,也避免了普通用户对数据恢复的错误操作。
进一步地,为了保证用户能够在WebServer端对数据备份和恢复的个性化可视化操作,在WebServer端需要设计多个API,包括:备份策略设置API、上传备份记录API、数据库恢复API、备份结果API。
综上所述,借助于本发明的上述技术方案,能够有效实现数据从本地灾备至异地,并根据具体需要将数据进行恢复。
最后应说明的是:显然,上述实施例仅仅是为清楚地说明本申请所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引申出的显而易见的变化或变动仍处于本申请型的保护范围之中。

Claims (10)

1.一种基于消息中间件的数据库异地备份与恢复方法,其特征在于:
由WebServer向消息中间件下发管理任务,并统计各种任务状态,及时反馈给管理员备份系统的处理情况;
由消息中间件完成备份系统的解耦工作,接收WebServer下发的具体任务;
由Agent监听消息中间件的变化,根据当前的任务状态及时从消息中间件获取待处理的任务消息,并将任务执行结果直接返回给WebServer。
2.根据权利要求1所述的数据库异地备份与恢复方法,其特征在于:所述由Agent监听消息中间件变化,根据当前的任务状态及时从消息中间件获取待处理的任务消息,并将任务执行结果直接返回给WebServer具体包括:
S1、Supervisor进程管理,用于监听、启动、停止一个或多个进程,当一个进程意外杀死时Supervisor监听到进程异常后会自动重新拉起,从而实现进程的自动恢复;
S2、构建监听异步任务队列,能够及时发现WebServer平台下发的任务,将耗时的复杂操作通过消息的方式传递给目标机器,并放置在后台执行;
S3、执行异步任务,当Agent接收到异步任务后,可以进行两种操作,一种是为设置备份或恢复任务,另一种是对备份历史文件进行操作;
S4、异步任务操作完成后,将执行结果返回给WebServer平台。
3.根据权利要求1所述的数据库异地备份与恢复方法,其特征在于:所述由消息中间件完成备份系统的解耦工作,接收WebServer下发的具体任务进一步包括:
该消息中间件基于Redis生产者消费者模式实现,使用BLPOP命令获取队列数据;
如果队列中没有数据则阻塞等待-监听模式。
4.根据权利要求3所述的数据库异地备份与恢复方法,其特征在于:
在消息中间件中,定义了任务入队方式,也定义了任务的超时时间,是否为异步任务,任务参数,为整个备份和恢复操作提高消息传递的基础。
5.根据权利要求1所述的数据库异地备份与恢复方法,其特征在于:
用户可以自定义设置备份模式,包括支持全量备份和增量备份;
同时也支持同时备份或恢复多个文件服务器上的指定目标文件或目录。
6.一种基于消息中间件的数据库异地备份与恢复系统,其特征在于:所述系统包括WebServer、消息中间件和Agent,WebServer负责向消息中间件下发管理任务,并统计各种任务状态,及时反馈给管理员备份系统的处理情况;消息中间件负责完成备份系统的解耦工作,接收WebServer下发的具体任务;Agent负责监听消息中间件的变化,根据当前的任务状态及时从消息中间件获取待处理的任务消息,并将任务执行结果直接返回给WebServer。
7.根据权利要求6所述的系统,其特征在于:所述Agent具体实现如下功能:Supervisor进程管理,用于监听、启动、停止一个或多个进程,当一个进程意外杀死时Supervisor监听到进程异常后会自动重新拉起,从而实现进程的自动恢复;构建监听异步任务队列,能够及时发现WebServer平台下发的任务,将耗时的复杂操作通过消息的方式传递给目标机器,并放置在后台执行;执行异步任务,当Agent接收到异步任务后,可以进行两种操作,一种是为设置备份或恢复任务,另一种是对备份历史文件进行操作;异步任务操作完成后,将执行结果返回给WebServer平台。
8.根据权利要求6所述的系统,其特征在于:所述消息中间件基于Redis生产者消费者模式实现,使用BLPOP命令获取队列数据;如果队列中没有数据则阻塞等待-监听模式。
9.根据权利要求8所述的系统,其特征在于:在消息中间件中,定义了任务入队方式,也定义了任务的超时时间,是否为异步任务,任务参数,为整个备份和恢复操作提高消息传递的基础。
10.根据权利要求1所述的系统,其特征在于:用户可以自定义设置备份模式,包括支持全量备份和增量备份;同时也支持同时备份或恢复多个文件服务器上的指定目标文件或目录。
CN202010663422.2A 2020-07-10 2020-07-10 一种基于消息中间件的数据库异地备份与恢复方法及系统 Pending CN111813602A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010663422.2A CN111813602A (zh) 2020-07-10 2020-07-10 一种基于消息中间件的数据库异地备份与恢复方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010663422.2A CN111813602A (zh) 2020-07-10 2020-07-10 一种基于消息中间件的数据库异地备份与恢复方法及系统

Publications (1)

Publication Number Publication Date
CN111813602A true CN111813602A (zh) 2020-10-23

Family

ID=72843492

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010663422.2A Pending CN111813602A (zh) 2020-07-10 2020-07-10 一种基于消息中间件的数据库异地备份与恢复方法及系统

Country Status (1)

Country Link
CN (1) CN111813602A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112565356A (zh) * 2020-11-24 2021-03-26 北京百度网讯科技有限公司 数据存储方法、装置以及电子设备
CN112685234A (zh) * 2020-11-26 2021-04-20 辽宁振兴银行股份有限公司 一种金融级两地三中心高可用MySQL数据库实现方法
CN112738173A (zh) * 2020-12-23 2021-04-30 上海创远仪器技术股份有限公司 无线电跨系统间实现可扩展异步消息处理的方法、系统、装置及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102299904A (zh) * 2010-06-23 2011-12-28 阿里巴巴集团控股有限公司 一种实现业务数据备份的系统及方法
CN102904746A (zh) * 2012-09-13 2013-01-30 曙光信息产业(北京)有限公司 基于消息机制的集群任务自调度系统与方法
CN107239342A (zh) * 2017-05-31 2017-10-10 郑州云海信息技术有限公司 一种存储集群任务管理方法及装置
US20190250994A1 (en) * 2018-02-09 2019-08-15 Hitachi, Ltd. Backup control method and backup control system
CN110209526A (zh) * 2018-08-14 2019-09-06 腾讯科技(深圳)有限公司 一种存储层同步系统、及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102299904A (zh) * 2010-06-23 2011-12-28 阿里巴巴集团控股有限公司 一种实现业务数据备份的系统及方法
CN102904746A (zh) * 2012-09-13 2013-01-30 曙光信息产业(北京)有限公司 基于消息机制的集群任务自调度系统与方法
CN107239342A (zh) * 2017-05-31 2017-10-10 郑州云海信息技术有限公司 一种存储集群任务管理方法及装置
US20190250994A1 (en) * 2018-02-09 2019-08-15 Hitachi, Ltd. Backup control method and backup control system
CN110209526A (zh) * 2018-08-14 2019-09-06 腾讯科技(深圳)有限公司 一种存储层同步系统、及存储介质

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112565356A (zh) * 2020-11-24 2021-03-26 北京百度网讯科技有限公司 数据存储方法、装置以及电子设备
CN112565356B (zh) * 2020-11-24 2023-04-21 北京百度网讯科技有限公司 数据存储方法、装置以及电子设备
CN112685234A (zh) * 2020-11-26 2021-04-20 辽宁振兴银行股份有限公司 一种金融级两地三中心高可用MySQL数据库实现方法
CN112738173A (zh) * 2020-12-23 2021-04-30 上海创远仪器技术股份有限公司 无线电跨系统间实现可扩展异步消息处理的方法、系统、装置及存储介质

Similar Documents

Publication Publication Date Title
CN111813602A (zh) 一种基于消息中间件的数据库异地备份与恢复方法及系统
EP3543866B1 (en) Resource-efficient record processing in unified automation platforms for robotic process automation
KR101888029B1 (ko) 가상 머신 클러스터 모니터링 방법 및 모니터링 시스템
US7523196B2 (en) Session monitoring using shared memory
US20160335180A1 (en) Distributed and optimized garbage collection of remote and exported table handle links to update propagation graph nodes
US8775591B2 (en) Real-time information technology environments
EP0980550B1 (en) Apparatus and method for remote data recovery
US20060190948A1 (en) Connection manager, method, system and program product for centrally managing computer applications
EP1679602A1 (en) Shared memory based monitoring for application servers
US8433772B2 (en) Automated tape drive sharing in a heterogeneous server and application environment
US8812896B1 (en) High-availability data center
US10747732B2 (en) Virtual database administrator
CN101694637A (zh) 一种数据库恢复的方法和系统
US6862732B1 (en) Method and apparatus for event-driven processing of data
US20200226032A1 (en) Method and system for implementing a backup validation engine
CN102316131A (zh) 云平台系统智能备份
CN112286661A (zh) 任务调度方法及装置、存储介质、终端
CA2427362A1 (en) Systems and methods for providing centralized management of heterogeneous distributed enterprise application integration objects
CN114546728A (zh) 一种适用于HBase进行数据备份与恢复的方法
CN110798339A (zh) 一种基于分布式任务调度框架的任务容灾方法
CN114356654A (zh) 备份系统、备份方法、装置、计算机设备和存储介质
US8688821B2 (en) Automatic transmission of support information from storage apparatus
US20040041840A1 (en) System and method for process dependency management
CN111831481B (zh) 一种基于c/s架构的数据库异地备份与恢复方法及系统
US10728323B2 (en) Method and apparatus for operating infrastructure layer in cloud computing architecture

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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: Room 8329, 3rd floor, Chengbao Hotel, 6 xiaoyunli, Xiaoyun Road, Chaoyang District, Beijing

Applicant after: Beijing reliable spectrum cloud Technology Co.,Ltd.

Applicant after: Xiamen Biebeyun Co.,Ltd.

Address before: 3f-a317, Zone C, innovation building, software park, torch hi tech Zone, Xiamen City, Fujian Province, 360100

Applicant before: Xiamen Biebeyun Co.,Ltd.

Applicant before: Beijing reliable spectrum cloud Technology Co.,Ltd.

RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20201023