一种数据库恢复方法、装置及系统制造方法及图纸

技术编号:19341511 阅读:30 留言:0更新日期:2018-11-07 13:40
本申请提供一种数据库恢复方法、装置及系统,方法应用于数据库恢复系统中主中心的灾备引擎设备,方法包括:基于灾备管理设备发送的携带待恢复数据库的老实例的标识的恢复指令,从灾备服务器获取待恢复数据库的配置信息;利用获取的配置信息向中间件发送配置指令,以使中间件创建待恢复数据库的新实例;从灾备服务器获取待恢复数据库的业务数据表,基于分库分表策略将获取的业务数据表写入存储设备。整个数据库恢复过程通过灾备引擎设备完成,使得中间件可专门处理业务,因此相对现有技术,中间件对业务的处理性能可提升一倍。又由灾备引擎设备专门用于数据库恢复,因此可缩短恢复耗时。

A database recovery method, device and system

This application provides a database recovery method, device and system. The method is applied to the disaster recovery engine equipment of the main center of the database recovery system. The method includes: based on the recovery instruction sent by the disaster recovery management equipment carrying the identification of the old instance of the database to be restored, obtaining the configuration of the database to be restored from the disaster recovery server. Information; using the obtained configuration information to send configuration instructions to the middleware to create new instances of the database to be restored; obtaining business data tables of the database to be restored from the disaster preparedness server, and writing the acquired business data tables to storage devices based on the strategy of sub-database and sub-table. The whole database recovery process is accomplished by disaster preparedness engine equipment, which makes the middleware specially deal with business. Therefore, compared with the existing technology, the processing performance of middleware can be doubled. The disaster recovery engine device is specially used for database recovery, so the recovery time can be shortened.

【技术实现步骤摘要】
一种数据库恢复方法、装置及系统
本申请涉及数据库
,尤其涉及一种数据库恢复方法、装置及系统。
技术介绍
随着数据量的高速增长,数据库的架构开始由集中式向分布式发展。目前所使用的分布式数据库系统通常包括分布式数据库的中间件、分布式数据库等。为了保证分布式数据库系统的安全性,通常需要进行数据库灾备以用于后续数恢复。在相关技术中,在对某一业务的数据库进行恢复时,灾备管理设备先从灾备中心的灾备服务器获取待恢复数据库的配置信息,并将待恢复数据库的配置信息发送至主中心的中间件,以使中间件根据配置信息创建待恢复数据库的实例,并基于分库分表策略自动生成待恢复数据库的路由信息;然后灾备管理设备再从灾备中心的灾备服务器获取待恢复数据库的业务数据表,并将业务数据表发送至主中心的中间件,并由中间件根据待恢复数据库的路由信息,将业务数据表写入主中心的存储设备中,从而完成数据库的恢复。然而,由于主中心的中间件除了需要处理待恢复数据库的数据写入过程,还需要处理业务对其他数据库的访问,因此主中心的中间件的处理压力比较大,进而影响到业务对数据库的访问性能,降低用户使用体验。
技术实现思路
有鉴于此,本申请提供一种数据库恢复方法、装置及系统,以解决现有恢复方式会影响业务对数据库的访问性能,降低用户使用体验的问题。根据本申请实施例的第一方面,提供一种数据库恢复方法,所述方法应用于数据库恢复系统中主中心的灾备引擎设备,所述数据库恢复系统还包含灾备管理设备、灾备中心的灾备服务器,以及主中心的存储设备,所述方法包括:步骤一、基于所述灾备管理设备发送的携带待恢复数据库的老实例的标识的恢复指令,从所述灾备服务器获取待恢复数据库的配置信息;步骤二、利用获取的配置信息向所述中间件发送配置指令,以使所述中间件创建待恢复数据库的新实例;步骤三、从所述灾备服务器获取待恢复数据库的业务数据表,并基于分库分表策略将获取的业务数据表写入所述存储设备。根据本申请实施例的第二方面,提供一种数据库恢复系统,所述系统包括:灾备管理设备,用于向主中心的灾备引擎设备发送携带待恢复数据库的老实例的标识的恢复指令;灾备中心的灾备服务器,用于存储待恢复数据库的配置信息和业务数据表;主中心的灾备引擎设备,用于基于携带待恢复数据库的老实例的标识的恢复指令,从所述灾备服务器获取待恢复数据库的配置信息,并利用获取的配置信息向中间件发送配置指令;从所述灾备服务器获取待恢复数据库的业务数据表,并基于分库分表策略将获取的业务数据表写入主中心的存储设备;主中心的中间件,用于基于所述配置指令,创建待恢复数据库的新实例;主中心的存储设备,用于存储所述灾备引擎设备写入的业务数据表。根据本申请实施例的第三方面,提供一种数据库恢复装置,所述装置应用于数据库恢复系统中主中心的灾备引擎设备,所述数据库恢复系统还包含灾备管理设备、灾备中心的灾备服务器,以及主中心的存储设备,所述装置包括:第一获取模块,用于基于所述灾备管理设备发送的携带待恢复数据库的老实例的标识的恢复指令,从所述灾备服务器获取待恢复数据库的配置信息;第一发送模块,用于利用获取的配置信息向所述中间件发送配置指令,以使所述中间件创建待恢复数据库的新实例;第二获取模块,用于从所述灾备服务器获取待恢复数据库的业务数据表;写入模块,用于基于分库分表策略将获取的业务数据表写入所述存储设备。应用本申请实施例,灾备引擎设备在接收到灾备管理设备发送的恢复指令之后,基于灾备管理设备发送的携带待恢复数据库的老实例的标识的恢复指令,从灾备服务器获取待恢复数据库的配置信息,并利用获取的配置信息向中间件发送配置指令,以使中间件创建待恢复数据库的新实例;从灾备服务器获取待恢复数据库的业务数据表,并基于分库分表策略将获取的业务数据表写入存储设备,从而完成数据库恢复。基于上述描述可知,整个数据库的恢复过程都是通过灾备引擎设备完成,使得主中心的中间件可以专门处理其他业务对数据库的访问,因此本申请相对现有技术,主中心的中间件对其他业务的处理性能至少能够提升一倍,进而提升了用户的使用体验。同时,由于灾备引擎设备专门用于进行数据库恢复过程,不需要处理其他业务,因此可以很大程度缩短恢复耗时。附图说明图1为本申请根据一示例性实施例示出的现有的数据库恢复系统结构示意图;图2为本申请根据一示例性实施例示出的一种数据库恢复系统结构示意图;图3为本申请根据一示例性实施例示出的一种数据库恢复方法的实施例流程图;图4为本申请根据一示例性实施例示出的另一种数据库恢复方法的实施例流程图;图5为本申请根据一示例性实施例示出的一种灾备引擎设备的硬件结构图;图6为本申请根据一示例性实施例示出的一种数据库恢复装置的实施例结构图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。图1为本申请根据一示例性实施例示出的现有的数据库恢复系统结构示意图,图1所示的恢复系统包括灾备管理设备、主中心的中间件和各存储设备(图1列举了3个存储设备),以及灾备中心的灾备服务器。其中,灾备管理设备可以分别与主中心和灾备中心通过网络进行交互,用于从灾备服务器获取待恢复数据库的数据(如元数据和业务数据),并发送至主中心的中间件中,并由中间件完成数据库恢复;主中心的中间件用于管理数据库,例如对数据库进行配置、监控、数据迁移、同步备份,以及处理各业务对数据库的访问(通过为各个数据库创建的实例实现),记录有数据库的元数据(例如数据库的配置信息和分库分表的路由信息)。对于数据库的恢复,可理解为数据灾备的逆向过程,即需要保证业务数据、元数据按照要求(如恢复至哪一时间点、哪些数据库需要恢复等)恢复,并保证恢复数据的一致性。下面结合图1,详细介绍现有技术中灾备管理设备如何与主中心的中间件交互完成数据库的恢复:当灾备管理设备接收到数据库恢复指令时,基于该指令中携带的时间点和待恢复数据库的实例标识,从灾备服务器中读取并解开该时间点对应的待恢复数据库的元数据文件,以提取待恢复数据库的配置信息,并将待恢复数据库的配置信息写入主中心的中间件,以使中间件根据配置信息创建待恢复数据库的新实例,并自动生成待恢复数据库的路由信息;然后灾备管理设备再从灾备服务器读取并解开待恢复数据库的业务数据文件,以本文档来自技高网...

【技术保护点】
1.一种数据库恢复方法,其特征在于,所述方法应用于数据库恢复系统中主中心的灾备引擎设备,所述数据库恢复系统还包含灾备管理设备、灾备中心的灾备服务器,以及主中心的中间件、存储设备,所述方法包括:步骤一、基于所述灾备管理设备发送的携带待恢复数据库的老实例的标识的恢复指令,从所述灾备服务器获取待恢复数据库的配置信息;步骤二、利用获取的配置信息向所述中间件发送配置指令,以使所述中间件创建待恢复数据库的新实例;步骤三、从所述灾备服务器获取待恢复数据库的业务数据表,并基于分库分表策略将获取的业务数据表写入所述存储设备。

【技术特征摘要】
1.一种数据库恢复方法,其特征在于,所述方法应用于数据库恢复系统中主中心的灾备引擎设备,所述数据库恢复系统还包含灾备管理设备、灾备中心的灾备服务器,以及主中心的中间件、存储设备,所述方法包括:步骤一、基于所述灾备管理设备发送的携带待恢复数据库的老实例的标识的恢复指令,从所述灾备服务器获取待恢复数据库的配置信息;步骤二、利用获取的配置信息向所述中间件发送配置指令,以使所述中间件创建待恢复数据库的新实例;步骤三、从所述灾备服务器获取待恢复数据库的业务数据表,并基于分库分表策略将获取的业务数据表写入所述存储设备。2.根据权利要求1所述的方法,其特征在于,所述业务数据表包含多个数据表,基于分库分表策略将获取的业务数据表写入所述存储设备,包括:基于分库分表策略为各个业务数据表分配存储设备;通过并行写入方式,将各个业务数据表写入对应的存储设备中。3.根据权利要求2所述的方法,其特征在于,基于分库分表策略为各个业务数据表分配存储设备之后,所述方法还包括:将各个业务数据表对应的存储设备的地址发送至所述中间件,以使所述中间件利用各个业务数据表对应的存储设备的地址更新本地的路由信息,其中,所述本地的路由信息指的是所述中间件在创建待恢复数据库的新实例之后,为所述待恢复数据库包含的业务数据表自动生成的路由信息。4.根据权利要求1所述的方法,其特征在于,所述步骤二与所述步骤三同步执行。5.根据权利要求1所述的方法,其特征在于,从所述灾备服务器获取待恢复数据库的配置信息,包括:从所述灾备服务器读取待恢复数据库的元数据文件;解析并提取所述元数据文件中待恢复数据库的配置信息。6.根据权利要求5所述的方法,其特征在于,利用获取的配置信息向所述中间件发送配置指令之后,所述方法还包括:从所述元数据文件中提取中间数据表,所述中间数据表指的是在使用所述待恢复数据库过程中产生的数据表;将提取的中间数据表发送至所述中间件创建的待恢复数据库的新实例中。7.根据权利要求6所述的方法,其特征在于,所述方法还包括:在利用获取的配置信息向所述中间件发送配置指令之后,接收所述中间件返回的待恢复数据库的新实例的标识;在从所述元数据文件中提取中间数据表之后,利用新实例的标识更新所述中间数据表中记录的老实例的标识。8.一种数据库恢复系统,其特征在于,所述系统包括:灾备管理设备,用于向主中心的灾备引擎设备发送携带待恢复数据库的老实例的标识的恢复指令;灾备中心的灾备服务器,用于存储待恢复数据库的配置信息和业务数据表;主中心的灾备引擎设备,用于基于携带待恢复数据库的老实例的标识的恢复指令,从所述灾备服务器获取待恢复数据库的配置信息,并利用获取的配置信息向中间...

【专利技术属性】
技术研发人员:谢东
申请(专利权)人:杭州数梦工场科技有限公司
类型:发明
国别省市:浙江,33

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

1