CN112527564A - 数据库的数据恢复演练方法、装置及存储介质 - Google Patents
数据库的数据恢复演练方法、装置及存储介质 Download PDFInfo
- Publication number
- CN112527564A CN112527564A CN202011511684.3A CN202011511684A CN112527564A CN 112527564 A CN112527564 A CN 112527564A CN 202011511684 A CN202011511684 A CN 202011511684A CN 112527564 A CN112527564 A CN 112527564A
- Authority
- CN
- China
- Prior art keywords
- database instance
- data recovery
- drilling
- recovery drilling
- backup
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1464—Management of the backup or restore process for networked environments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1469—Backup restoration techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/80—Database-specific techniques
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种数据库的数据恢复演练方法、装置、计算机设备及存储介质,该方法包括:获取数据库的备份数据库实例的数据库实例信息,并制定备份数据库实例对应的数据恢复演练计划;当数据恢复演练时间到来时,基于数据恢复演练计划对备份数据库实例进行恢复演练并在恢复演练完成时生成临时数据库实例;根据备份数据库实例和临时数据库实例确定备份数据库实例的恢复演练是否成功,若备份数据库实例的恢复演练成功,则生成备份数据库实例的数据恢复演练报告,并向备份数据库实例的业务终端推送数据恢复演练报告。采用本申请,可以实现数据库的数据恢复演练自动化,可提高数据恢复演练效率,节省数据恢复演练的实现成本。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据库的数据恢复演练方法、装置及存储介质。
背景技术
随着企业对业务连续性的重视程度越来越高,为了避免数据丢失造成的不可挽回的业务损失,备份数据的定时恢复演练是最后的一根救命稻草。目前,市面上针对数据库数据备份与恢复的产品均需要人工设计从数据恢复到启动验证的演练流程、召集数据库上下游应用管理员制定关联演练序列、进行演练完成后的关联方验证,最后提供的演练报告也是由人工撰写,操作复杂且耗时耗费人力,效率低下。这对于备份恢复覆盖率要求高的企业来说,不仅大大增加了人力成本,而且对于备份管理人员专业水平的依赖性高,稳定性差。
发明内容
本申请提供一种数据库的数据恢复演练方法、装置及存储介质,可以实现数据库的数据恢复演练自动化,可提高数据恢复演练效率,降低数据恢复演练的用户操作复杂性,节省数据恢复演练的实现成本。
第一方面,本申请提供了一种数据库的数据恢复演练方法,该方法包括:
获取数据库的备份数据库实例的数据库实例信息,并根据上述数据库实例信息制定上述备份数据库实例对应的数据恢复演练计划,上述数据恢复演练计划中至少包括上述备份数据库实例的数据恢复演练时间;
当上述数据恢复演练时间到来时,基于上述数据恢复演练计划对上述备份数据库实例进行恢复演练并在恢复演练完成时生成临时数据库实例;
根据上述备份数据库实例和上述临时数据库实例确定上述备份数据库实例恢复演练是否成功;
若上述备份数据库实例的恢复演练成功,则生成上述备份数据库实例的数据恢复演练报告,并向上述备份数据库实例的业务终端推送上述数据库恢复演练报告。
结合第一方面,在一种可能的实施方式中,上述获取数据库的备份数据库实例的数据库实例信息之前,上述方法还包括:
判断数据库的环境类型,若上述数据库的环境类型为生产环境,则对上述数据库的数据库实例进行备份以得到上述数据库的备份数据库实例。
结合第一方面,在一种可能的实施方式中,当上述数据恢复演练时间到来时,上述方法还包括:
确定当前恢复时间窗口数据恢复可用区中数据恢复演练任务的数量是否大于或者等于任务数量阈值;
若上述数据恢复可用区中数据恢复演练任务的数量小于任务数量阈值,则执行基于上述数据恢复演练计划对上述备份数据库实例进行恢复演练并在恢复演练完成时生成临时数据库实例的步骤;
若上述数据恢复可用区中数据恢复演练任务的数量大于或者等于任务数量阈值,则将上述备份数据库实例的数据恢复演练时间更改为当前恢复时间窗口的下一个恢复时间窗口。
结合第一方面,在一种可能的实施方式中,当上述数据恢复演练时间到来时,上述方法还包括:
若上述数据恢复演练时间与变更窗口时间冲突,则向云控制平台发送变更窗口时间冲突提示;
从上述云控制平台接收上述云控制平台基于上述变更窗口时间冲突提示返回的数据恢复演练发起时间,并将上述备份数据库实例的数据恢复演练时间更改至上述数据恢复演练发起时间。
结合第一方面,在一种可能的实施方式中,上述数据恢复演练计划中还包括上述备份数据库实例关联的多个业务功能实例;上述基于上述数据恢复演练计划对上述备份数据库实例进行恢复演练包括:
调用上述备份数据库实例关联的各业务功能实例关联的各功能模块,通过上述各功能模块执行上述各业务功能实例的数据恢复演练任务。
结合第一方面,在一种可能的实施方式中,上述根据上述备份数据库实例和上述临时数据库实例确定上述备份数据库实例的恢复演练是否成功,包括:
验证上述临时数据库实例与上述备份数据库实例的数据库版本号是否一致,若上述临时数据库实例与上述备份数据库实例的数据库版本号一致则确定上述备份数据库实例的恢复演练成功;
或者,验证上述临时数据库实例与上述备份数据库实例的数据库日志记录的位置是否一致,若上述临时数据库实例与上述备份数据库实例的数据库日志记录的位置一致,则确定上述备份数据库实例的恢复演练成功。
结合第一方面,在一种可能的实施方式中,上述备份数据库实例的恢复演练成功之后,上述方法还包括:
清除上述临时数据库实例。
结合第一方面,在一种可能的实施方式中,上述备份数据库实例为上述数据库中的第一备份数据库实例;上述根据上述数据库实例信息制定上述备份数据库实例对应的数据恢复演练计划之后,上述方法还包括:
当检测到上述数据库的第二备份数据库实例时,获取上述第二备份数据库实例的数据库实例信息,并根据上述第二备份数据库实例的数据库实例信息制定上述第二备份数据库实例对应的数据恢复演练计划;
其中,上述第二备份数据库实例为上述数据库中在上述第一备份数据库实例之后生成并完成备份的数据库实例,上述第二备份数据库实例的数据恢复演练时间在上述第一备份数据库实例的数据恢复演练时间之后。
结合第一方面,在一种可能的实施方式中,上述方法还包括:
确定数据恢复演练报告的生成时间维度,基于上述数据库中一个生成时间维度内生成的各备份数据库实例的数据恢复演练报告生成上述数据库的数据恢复演练报告;
其中,上述生成时间维度包括年度、季度或者月度,上述一个生成时间维度包括一年、一个季度或者一个月。
结合第一方面,在一种可能的实施方式中,上述方法还包括:
接收业务终端的演练报告获取请求,上述演练报告获取请求中携带数据恢复演练报告的推送路径和目标生成时间维度;
从上述数据库中确定出上述目标生成时间维度内生成的目标数据库恢复演练报告,并基于上述推送路径向上述业务终端推送上述目标数据库恢复演练报告。
第二方面,本申请提供了一种数据库的数据恢复演练装置,该装置包括:
获取模块,用于获取数据的备份数据库实例的数据库实例信息;
演练制定模块,用于根据上述获取模块获取的上述数据库实例信息制定上述备份数据库实例对应的数据恢复演练计划,上述数据恢复演练计划中至少包括上述备份数据库实例的数据恢复演练时间;
演练执行模块,用于当上述数据恢复演练时间到来时,基于上述数据恢复演练计划对上述备份数据库实例进行恢复演练并在恢复演练完成时生成临时数据库实例;
演练验证模块,用于根据上述备份数据库实例和上述演练执行模块生成的上述临时数据库实例确定上述备份数据库实例的恢复演练是否成功;
报告生成模块,用于在上述演练验证模块确定上述备份数据库实例的恢复演练成功时,生成上述备份数据库实例的数据恢复演练报告;
报告推送模块,用于向上述备份数据库实例的业务终端推送上述报告生成模块生成的上述数据恢复演练报告。
结合第二方面,在一种可能的实施方式中,上述数据库的数据恢复演练装置还包括:
备份模块,用于判断数据库的环境类型,若上述数据库的环境类型为生产环境,则对上述数据库的数据库实例进行备份以得到上述数据库的备份数据库实例。
结合第二方面,在一种可能的实施方式中,上述演练执行模块包括:
第一确定单元,用于在上述数据恢复演练时间到来时,确定当前恢复时间窗口数据恢复可用区中数据恢复演练任务的数量是否大于或者等于任务数量阈值;
演练单元,用于在上述第一确定单元确定上述数据恢复可用区中数据恢复演练任务的数量小于任务数量阈值时,执行基于上述数据恢复演练计划对上述备份数据库实例进行恢复演练并在恢复演练完成时生成临时数据库实例的步骤;
第一时间更改单元,用于在根据上述第一确定单元确定的上述数据恢复可用区中数据恢复演练任务的数量大于或者等于任务数量阈值时,将上述备份数据库实例的数据恢复演练时间更改为当前恢复时间窗口的下一个恢复时间窗口。
结合第二方面,在一种可能的实施方式中,上述演练执行模块还包括:
提示推送单元,用于当上述数据恢复演练时间到来时,若上述数据恢复演练时间与变更窗口时间冲突,则向云控制平台发送变更窗口时间冲突提示;
第二时间更改单元,用于从上述云控制平台接收上述云控制平台基于上述变更窗口时间冲突提示返回的数据恢复演练发起时间,并将上述备份数据库实例的数据恢复演练时间更改至上述数据恢复演练发起时间。
结合第二方面,在一种可能的实施方式中,上述数据恢复演练计划中还包括上述备份数据库实例关联的多个业务功能实例;上述演练执行模块还用于:
调用上述备份数据库实例关联的各业务功能实例关联的各功能模块,通过上述各功能模块执行上述各业务功能实例的数据恢复演练任务。
结合第二方面,在一种可能的实施方式中,上述演练验证模块包括:
版本号验证单元,用于验证上述临时数据库实例与上述备份数据库实例的数据库版本号是否一致,若上述临时数据库实例与上述备份数据库实例的数据库版本号一致则确定上述备份数据库实例的恢复演练成功;
位置验证单元,用于验证上述临时数据库实例与上述备份数据库实例的数据库日志记录的位置是否一致,若上述临时数据库实例与上述备份数据库实例的数据库日志记录的位置一致,则确定上述备份数据库实例的恢复演练成功。
结合第二方面,在一种可能的实施方式中,上述数据库的数据恢复演练装置还包括:
清除模块,用于上述备份数据库实例的恢复演练成功之后,清除上述临时数据库实例。
结合第二方面,在一种可能的实施方式中,上述备份数据库实例为上述数据库中的第一备份数据库实例;上述根据上述数据库实例信息制定上述备份数据库实例对应的数据恢复演练计划之后;
上述获取模块还用于:
当检测到上述数据库的第二备份数据库实例时,获取上述第二备份数据库实例的数据库实例信息;
上述演练制定模块还用于:
根据上述第二备份数据库实例的数据库实例信息制定上述第二备份数据库实例对应的数据恢复演练计划;
其中,上述第二备份数据库实例为上述数据库中在上述第一备份数据库实例之后生成并完成备份的数据库实例,上述第二备份数据库实例的数据恢复演练时间在上述第一备份数据库实例的数据恢复演练时间之后。
结合第二方面,在一种可能的实施方式中,上述报告生成模块还用于:
确定数据恢复演练报告的生成时间维度,基于上述数据库中一个生成时间维度内生成的各备份数据库实例的数据恢复演练报告生成上述数据库的数据恢复演练报告;
其中,上述生成时间维度包括年度、季度或者月度,上述一个生成时间维度包括一年、一个季度或者一个月。
结合第二方面,在一种可能的实施方式中,上述报告推送模块还包括:
接收单元,用于接收业务终端的演练报告获取请求,上述演练报告获取请求中携带数据恢复演练报告的推送路径和目标生成时间维度;
第二确定单元,用于从上述数据库中确定出基于上述接收单元接收的演练报告获取请求中携带的目标生成时间维度内生成的目标数据库恢复演练报告;
推送单元,用于基于上述接收单元接收的演练报告获取请求中携带的推送路径向上述业务终端推送上述目标数据库恢复演练报告。
第三方面,本申请提供了一种计算机设备,包括:处理器、存储器、收发器以及网络接口;
该处理器与存储器、收发器、网络接口相连,其中,网络接口用于提供数据通信功能,该存储器用于存储计算机程序,该收发器和处理器用于调用该计算机程序,以执行本申请中上述第一方面中的数据库的数据恢复演练方法。
第四方面,本申请提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包括程序指令,该程序指令当被处理器执行时,执行本申请中上述第一方面中的数据库的数据恢复演练方法。
在本申请中,当业务方数据库需要对数据库进行数据备份并对备份数据进行恢复演练时,数据恢复演练系统可自动同步获取数据库实例信息,通过对已备份数据库实例制定备份数据库实例对应的数据恢复演练计划,当数据恢复演练时间到来时,基于制定的数据恢复演练计划对已备份数据库实例自动进行数据恢复演练并在数据恢复演练完成时生成临时数据库实例。数据恢复演练计划完成时可对生成的临时数据库实例启动数据库并完成验证,由数据恢复演练系统实时分析恢复出来的临时数据库实例是否可以顺利启动,通过对比备份数据库实例与临时数据库实例的数据库版本号是否一致、数据库日志记录的位置是否一致,以判断数据恢复演练计划是否成功,不需要登录数据库实例,保障了数据库账号的安全性。数据恢复演练计划成功时数据恢复演练系统可自动生成和保存业务方所有数据库按照年度、季度、月度等时间维度执行的所有演练记录。业务方可自行选择数据库单个实例、多个实例、全部实例以月度、季度、年度为维度生成的演练报告,无需人工撰写演练报告,全程无需人工干预,由数据恢复演练系统自动执行,操作简单,适用性高。
附图说明
为了更清楚地说明本申请中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请提供的网络架构的结构示意图;
图2是本申请提供的数据库的数据恢复演练方法的一流程示意图;
图3是本申请提供的数据库的数据恢复演练方法的另一流程示意图;
图4是本申请提供的数据库的数据恢复演练装置的结构示意图;
图5是本申请提供的数据库的数据恢复演练装置的结构示意图;
图6是本申请提供的计算机设备的结构示意图。
具体实施方式
下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参见图1,图1是本申请提供的网络架构的结构示意图。如图1所示,该网络架构可以包括服务器10、数据库20以及业务终端集群,该业务终端集群可以包括多个业务终端,如图1所示,具体可以包括业务终端100a、业务终端100b、业务终端100c、…、业务终端100n。
其中,服务器10可以为独立的物理服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(content delivery network,CDN)、大数据以及人工智能平台等基础云计算服务的云服务器。业务终端集群中的每个业务终端均可以包括但不限于:上述终端可以包括手机、平板电脑、笔记本电脑、掌上电脑、智能音响、移动互联网设备(mobile internet device,MID)、销售点(point of sales,POS)、可穿戴设备(例如智能手表、智能手环等)等。上述数据库20指的是一个单位或是一个应用领域的通用数据处理系统,它存储的是属于企业和事业部门、团体和个人的有关数据的集合。数据库中的数据是从全局观点出发建立的,按一定的数据模型进行组织、描述和存储。其结构基于数据间的自然联系,从而可提供一切必要的存取路径,且数据不再针对某一应用,而是面向全组织,具有整体的结构化特征。在一些可行的实施方式中,上述数据库20可以为Oracle、MySQL、SQL Server、PostgrcSQL、DB2、Couchbase等。
如图1所示,业务终端100a、业务终端100b、业务终端100c、…、业务终端100n可以分别与上述服务器10进行网络连接,以便于每个业务终端可以通过该网络连接与服务器10进行数据交互;可以理解,上述服务器10与数据库20之间同样建立有网络连接,以便于服务器10可以通过该网络连接与数据库20进行数据交互。例如,服务器10接收业务终端100a或者业务终端100b、业务终端100c、…、业务终端100n的演练报告获取请求,基于上述携带有数据库恢复演练报告推送路径和目标生成时间维度的演练报告获取请求,上述服务器10从数据库20中确定出上述目标生成时间维度内生成的目标数据库恢复演练报告,并基于上述推送路径向业务终端100a或者业务终端100b、业务终端100c、…、业务终端100n推送上述目标数据库恢复演练报告。
本申请提供的数据库的数据恢复演练方法可适用于任一类别数据的数据备份与恢复场景,比如金融数据备份与恢复场景、医疗数据备份与恢复场景、库存数据备份与恢复场景或者其它数据备份与恢复场景,具体可根据实际应用场景确定,在此不做限制。
下面将结合图2至图6对本申请的数据库的数据恢复演练方法、数据库的数据恢复演练装置以及计算机设备进行说明。
请参见图2,图2是本申请提供的数据库的数据恢复演练的一流程示意图。该方法可以由承载于计算机设备上的数据恢复演练系统执行,换句话说,数据恢复演练系统可以在该计算机设备上运行,该数据恢复演练系统可调用备份数据库实例所关联的各个业务功能实例所关联的功能模块来执行各备份数据库实例的数据恢复演练计划。为方便描述,下面将以数据恢复演练系统为本申请实施例提供的方法的执行主体为例进行说明。可选的,该计算机设备可以为上述图1所对应实施例中的服务器10,这里将不对其进行限定。本申请将以计算机设备为服务器为例进行说明,如图2所示的方法可以包括以下步骤S101-步骤S105:
步骤S101,获取数据库的备份数据库实例的数据库实例信息。
在一些可行的实施方式中,数据恢复演练系统可以对所有云上数据库数据的备份与恢复演练进行全程的实时分析,比如对于数据库实例数据的备份,数据恢复演练系统可以通过判断数据库环境类型来判断是否启用备份。如果数据库环境为生产环境,则启用备份。这里备份的内容包括数据库实例的账号列表、数据库配置信息、数据库日志文件与数据文件等数据库实例的所有数据,以确保数据库数据发生逻辑错误或物理设备故障需要进行数据库数据恢复时,通过恢复演练系统备份的数据可以被成功恢复。数据库实例的恢复演练主要是针对已备份出来的数据进行恢复演练的,为方便描述,下面可将备份完成的数据库实例作为备份数据库实例进行说明。当上述数据库实例备份完成后,数据恢复演练系统获取数据库的备份数据库实例的数据库实例信息,用以后续针对上述数据库实例信息制定恢复演练计划。这里的数据库实例具体指内存结构加一组后台进程,可以理解的是数据库是用来长久储存数据库的,而内存只能临时存储数据,磁盘才能真正存储数据。因此在使用数据库时需要由实例中的一组后台进程从磁盘上将数据读入到实例的内存中,然后经过在内存中对数据的操作再从实例的内存中经过一组后台进程写到数据库中。需要注意的是,一个实例可以用于一个数据库,多个实例也可以同时用于一个数据库,实例和数据库的关系是一对多的关系。在本申请可选的实施例中,数据恢复演练系统获取的备份数据库实例的数据库实例信息包括数据库实例的账号列表在内的所有数据信息。
步骤S102,根据上述数据库实例信息制定上述备份数据库实例对应的数据恢复演练计划。
在一些可行的实施方式中,需要进行数据恢复演练的场景可以为业务方自身对数据库业务的恢复演练需求。比如,当业务方数据库需要对数据库进行数据备份并对备份数据进行恢复演练时,数据恢复演练系统可自动获取数据库实例信息,然后根据数据库的环境信息,比如生产环境信息、开发环境信息、测试环境信息等,针对数据库内的所有使用数据恢复演练系统备份的数据库实例自动制定数据恢复演练计划。上述数据恢复演练计划可以包括目标备份数据库实例以及目标备份数据库实例的数据恢复演练时间。这里,目标备份数据库实例可以是使用数据恢复演练系统备份完成的任意一个备份数据库实例。可选的,上述数据库恢复演练时间通常不设置在变更窗口时间内,变更窗口时间具体指约定的、周期性的对系统实施一定操作的时间,在此期间实施变更或发布对系统服务的影响最小。当数据恢复演练系统生成的数据恢复演练时间与变更窗口时间冲突时,数据恢复演练系统向云控制台发出对应的时间冲突提示,上述数据恢复演练系统从云控制平台接收上述云控制平台基于上述变更窗口时间冲突提示返回的数据恢复演练发起时间,并将上述备份数据库实例的数据恢复演练时间更改至上述数据恢复演练发起时间,以避免数据恢复演练系统生成的数据恢复演练时间与变更窗口时间冲突的问题。
这里,云控制平台可以是计算机设备的用户操作界面,比如计算机设备的用户界面(user interface,UI)。可以理解,数据恢复演练系统是在计算机设备后台运行,该用户界面可以是该计算机设备提供给数据恢复演练系统的管理人员进行操作的前端用户操作界面。数据恢复演练系统的管理人员可基于该用户界面对数据恢复演练系统的数据恢复演练进行监控,或者在数据恢复演练系统进行数据恢复演练的过程中提供技术支持。当数据恢复演练系统生成的数据恢复演练时间与变更窗口时间冲突时,数据恢复演练系统输出时间冲突提示信息至上述用户操作界面,以向管理人员发出时间冲突的告警。管理人员可基于该用户操作界面查看时间冲突提示信息以及数据恢复演练时间,进而可基于变更窗口时间和数据恢复演练时间设定数据恢复演练发起时间以重新设定数据恢复演练时间,并将上述数据恢复演练发起时间反馈至数据恢复演练系统。
可选的,在一些可行的实施方式中,对于演练失败的数据库实例,数据恢复演练系统可自动生成新的数据恢复演练计划,操作灵活。这里新的数据恢复演练计划主要是数据恢复演练时间上的改变,数据恢复演练计划中包括的演练内容可以保持不变。也就是说若一个数据库实例恢复演练失败则重新选择一个数据恢复演练时间进行同样内容的恢复演练。
步骤S103,基于上述数据恢复演练计划对上述备份数据库实例进行恢复演练并在恢复演练完成时生成临时数据库实例。
在一些可行的实施方式中,数据恢复演练系统在对备份数据库实例自动制定数据恢复演练计划时,数据恢复演练系统可对不同的备份数据库实例制定对应的数据恢复演练计划且不同的备份数据库实例的数据恢复演练时间依次递增,数据恢复演练系统可定时查看数据恢复演练时间并在上述数据恢复演练时间到来时自动发起执行对应的数据恢复演练计划,数据恢复演练完成后生成临时数据库实例。上述数据恢复演练计划中还包括上述备份数据库实例关联的多个业务功能实例,当上述数据恢复演练时间到来时,数据恢复演练系统可调用上述备份数据库实例关联的各业务功能实例关联的各功能模块,通过上述各功能模块执行上述各业务功能实例的数据恢复演练任务。在本申请可选的实施例中,执行上述数据恢复演练任务可以为,数据恢复演练系统可适配不同功能模块的应用程序编程接口(application programming interface,API),通过网络协议远程调用上述各功能模块来执行上述各业务功能实例的数据恢复演练任务,数据恢复演练完成时生成临时业务功能实例,这里的临时业务功能实例可以是数据恢复演练系统恢复生成的与业务终端的备份数据库实例具有相同业务功能的数据库实例。
步骤S104,根据上述备份数据库实例和上述临时数据库实例确定上述备份数据库实例的恢复演练是否成功。
在一些可行的实施方式中,数据恢复演练计划完成时可对生成的临时数据库实例启动并进行验证,由数据恢复演练系统实时分析恢复出来的临时数据库实例是否可以顺利启动,通过对比备份数据库实例与临时数据库实例的数据库版本号是否一致或者数据库日志记录的位置是否一致,以判断数据恢复演练计划是否成功。若上述临时数据库实例与上述备份数据库实例的数据库版本号一致则确定上述备份数据库实例的恢复演练成功;或者,若上述临时数据库实例与上述备份数据库实例的数据库日志记录的位置一致,则确定上述备份数据库实例的恢复演练成功。上述验证流程不需要登录数据库实例,保障了数据库账号的安全性。当数据恢复演练系统完成数据库相关验证,恢复出来的临时数据库实例正常启动后就会被数据恢复演练系统立即清除释放,保障了数据库数据信息的安全性,业务方可以自行查看销毁记录,以确保数据库实例数据不被泄露,保障了数据库实例数据的安全性。
步骤S105,生成上述备份数据库实例的数据恢复演练报告,并向上述备份数据库实例的业务终端推送上述数据恢复演练报告。
在一些可行的实施例中,若上述备份数据库实例的数据恢复演练成功,则数据恢复演练系统确定出数据恢复演练报告的生成时间维度,并基于上述数据库中一个生成时间维度内生成的各备份数据库实例的数据恢复演练报告生成上述数据库的数据库恢复演练报告。其中,上述生成时间维度包括年度、季度或者月度,上述一个生成时间维度包括一年、一个季度或者一个月。上述备份数据库的数据库恢复演练报告为针对一个生成时间维度内生成的数据库实例的数据恢复演练报告集合。当数据恢复演练系统接收到业务终端发送的携带有数据恢复演练报告的推送路径以及目标生成时间维度的演练报告获取请求时,上述数据恢复演练系统从数据库中确定出上述目标生成时间维度内生产的目标数据库恢复演练报告,并基于上述推送路径信息向业务终端推送上述目标数据库恢复演练报告。可选的,上述推送路径可以为系统站内信、邮件、手机等联络方式,若上述目标生成时间维度为一个月,则目标数据库恢复演练报告为一个月内各备份数据库实例的数据恢复演练报告的集合。在一种可行的实施方式中,上述数据恢复演练系统接收到业务终端发送的携带有数据恢复演练报告的推送路径以及目标生成时间维度的演练报告获取请求时,生成备份数据库实例的数据库恢复演练报告,并向上述备份数据库实例的业务终端推送上述数据库恢复演练报告可以为,数据恢复演练系统接收到业务终端发送的,以系统站内信为推送路径以一个月为目标生成时间维度的演练报告获取请求时,基于各备份数据库实例的数据恢复演练报告生成一个月的备份数据库实例的数据库恢复演练报告,并通过系统站内信向上述备份数据库实例的业务终端发送上述数据库恢复演练报告。
在本申请中,当业务方数据库需要对数据库进行数据备份并对备份数据进行数据恢复演练时,数据恢复演练系统可自动同步获取数据库实例信息,通过对已备份数据库实例制定备份数据库实例对应的数据恢复演练计划,当数据恢复演练时间到来时,基于制定的数据恢复演练计划对已备份数据库实例自动进行恢复演练并在恢复演练完成时生成临时数据库实例。数据恢复演练计划完成时可对生成的临时数据库实例启动数据库并完成验证,由数据恢复演练系统实时分析恢复出来的数据库是否可以顺利启动,通过对备份数据库实例与临时数据库实例的数据库版本号是否一致、数据库日志记录的位置是否一致,以判断数据恢复演练计划是否成功,不需要登录数据库实例,保障了数据库账号的安全性。数据恢复演练计划成功时数据恢复演练系统可自动生成和保存业务方所有数据库按照年度、季度、月度等时间维度执行的所有演练记录。业务方可自行选择数据库单个实例、多个实例、全部实例以月度、季度、年度为维度生成的演练报告,无需人工撰写演练报告,全程无需人工干预,由数据恢复演练系统自动执行,可提高数据恢复演练效率,降低数据恢复演练的用户操作复杂性,节省数据恢复演练的实现成本。
请参见图3,图3是本申请提供的数据库的数据恢复演练方法的另一流程示意图。该方法可以由计算机设备执行,可选的,该计算机设备可以为上述图1所对应实施例中的服务器10,这里将不对其进行限定。本申请将以计算机设备为服务器为例进行说明,如图3所示的方法可以包括以下步骤S201-步骤S206:
步骤S201,获取数据库的第一备份数据库实例的数据库实例信息,根据上述信息制定备份数据库实例对应的数据恢复演练计划。
其中,该步骤S201的具体实施方式可参见上述图2所对应实施例中对步骤S101-S102的描述,这里将不再赘述。
步骤S202,当检测到数据库的第二备份数据库实例时,获取第二备份数据库实例的数据库实例信息,根据上述信息制定对应的数据恢复演练计划。
在一些可行的实施方式中,上述备份数据库实例可以为数据库中的第一备份数据库实例,这里,第一备份数据库实例可以是数据库中已经生成并且完成备份的数据库实例。当数据恢复演练系统根据上述第一备份数据库实例信息制定上述第一备份数据库实例对应的数据恢复演练计划和/或基于该数据恢复演练计划对第一备份数据库实例进行数据恢复演练的过程中,若数据恢复演练系统检测到数据库的第二备份数据库实例,则获取上述第二备份数据库实例的数据库实例信息,并根据上述第二备份数据库实例的数据库实例信息制定上述第二备份数据库实例对应的数据恢复演练计划。其中,上述第二备份数据库实例为上述数据库中在上述第一备份数据库实例生成并完成备份的数据库实例,上述第二备份数据库实例的数据恢复演练时间在上述第一备份数据库实例的数据恢复演练时间之后。在本申请可选的实施例中,数据恢复演练系统对各备份数据库实例进行数据恢复演练时只需要一台指定主机来执行恢复演练任务,与生产库完全物理隔离,保证不影响运行中的生产库,因此在备份数据库的数据恢复演练过程中,依然会有新的数据库实例生成。这里的生产库可以是对外提供服务的数据库,而备份数据主要存放在交换库中。当数据恢复演练系统执行恢复演练时,生产库正常运行并生成数据库实例,当数据恢复演练系统检测到第二备份数据库实例时,根据获取的上述第二备份数据库实例的数据库实例信息制定上述第二备份数据库实例对应的数据恢复演练计划。对于检测到的第二备份数据库实例数据恢复演练系统会为其制定对应的数据恢复演练计划,而对于已经下线的数据库实例,数据恢复演练系统则会删除对应的数据恢复演练计划,主机资源和存储资源的重复利用,因此不需要花太多硬件资源来进行恢复演练,节省了数据恢复演练的实现成本。
步骤S203,当上述数据恢复演练时间到来时,确定当前恢复时间窗口数据恢复可用区中数据恢复演练任务的数量是否大于或者等于任务数量阈值。
在一些可行的实施方式中,在数据恢复演练计划开始前,数据恢复演练系统会校验当前的数据恢复可用区中数据恢复演练任务的数量是否大于或者等于任务数量阈值,这里的数据恢复可用区具体指同一数据中心机房的不同模块,比如某公司在某地有一个机房,同一个机房有不同的楼层,3楼叫“SZA”,4楼叫“SZB”,那么3楼和4楼就属于不同的数据恢复可用区。秉持着优先保障业务连续性原则,若上述数据恢复可用区中数据恢复演练任务的数量小于任务数量阈值,则执行基于上述数据恢复演练计划对上述备份数据库实例进行恢复演练并在恢复演练完成时生成临时数据库实例的步骤。若上述数据恢复可用区中数据恢复演练任务的数量大于或者等于任务数量阈值,则将上述备份数据库实例的数据恢复演练时间更改为当前恢复时间窗口的下一个恢复时间窗口,这里的恢复时间窗口可以是固定的进行数据恢复演练的一段时间。
步骤S204,基于数据恢复演练计划对备份数据库实例进行恢复演练并在恢复演练完成时生成临时数据库实例。
其中,该步骤S204的具体实施方式可参见上述图2所对应实施例中对步骤S103的描述,这里将不再赘述。
步骤S205,根据备份数据库实例和临时数据库实例确定备份数据库实例的恢复演练是否成功。
其中,该步骤S205的具体实施方式可参见上述图2所对应实施例中对步骤S104的描述,这里将不再赘述。
步骤S206,生成备份数据库实例的数据恢复演练报告,并向备份数据库实例的业务终端推送数据恢复演练报告。
其中,该步骤S206的具体实施方式可参见上述图2所对应实施例中对步骤S105的描述,这里将不再赘述。
在本申请中,数据恢复演练系统对各数据库实例进行恢复演练时只需要一台指定的恢复主机来执行恢复演练任务,与生产库完全物理隔离,保证不影响运行中的生产库。对于检测出的第二备份数据库实例自动制定对应的数据恢复演练计划,数据库实例下线则自动删除对应的数据恢复演练计划,对数据恢复演练失败的数据库实例自动制定对应的演练计划,操作灵活。不论数据恢复演练成功或失败数据恢复演练系统都会将恢复出来的临时数据库实例删除掉,主机资源和存储资源的重复利用,不需要花太多硬件资源来进行数据恢复演练。且秉持着优先保障业务连续性原则,若当前的数据恢复可用区存在大量的备份或恢复任务则自动将数据恢复演练计划延期至下一个恢复时间窗口来执行,操作灵活。数据恢复演练计划完成时可对生成的临时数据库实例启动数据库并完成验证,由数据恢复演练系统实时分析恢复出来的数据库是否可以顺利启动,通过对比备份数据库实例与临时数据库实例的数据库版本号是否一致、数据库日志记录的位置是否一致,以判断数据恢复演练计划是否成功,不需要登录数据库实例,保障了数据库账号的安全性。数据恢复演练计划成功时恢复演练系统可自动生成和保存业务方所有数据库按照年度、季度、月度等时间维度执行的所有演练记录。业务方可自行选择数据库单个实例、多个实例、全部实例以月度、季度、年度为维度生成的演练报告,无需人工撰写演练报告,全程无需人工干预,由数据恢复演练系统自动执行,操作简单,适用性高。
进一步地,请参见图4,图4是本申请提供的数据库的数据恢复演练装置的一结构示意图。该数据库的数据恢复演练装置可以是运行于计算机设备中的一个计算机程序(包括程序代码),例如,该数据库的数据恢复演练装置为一个应用软件;该数据库的数据恢复演练装置可以用于执行本申请提供的方法中的相应步骤。如图4所示,该数据库的数据恢复演练装置可以应用于计算机设备,信息推荐装置1可以包括:获取模块10、演练制定模块20、演练执行模块30、演练验证模块40、报告生成模块50以及报告推送模块60。
获取模块10,用于获取数据的备份数据库实例的数据库实例信息;
演练制定模块20,用于根据上述获取模块获取的上述数据库实例信息制定上述备份数据库实例对应的数据恢复演练计划,上述数据恢复演练计划中至少包括上述备份数据库实例的数据恢复演练时间;
演练执行模块30,用于在上述数据恢复演练时间到来时,基于上述数据恢复演练计划对上述备份数据库实例进行恢复演练并在恢复演练完成时生成临时数据库实例;
演练验证模块40,用于根据上述备份数据库实例和上述演练执行模块30生成的临时数据库实例确定上述备份数据库实例的恢复演练是否成功;
报告生成模块50,用于在上述演练验证模块40确定上述备份数据库实例的恢复演练成功时,则生成上述备份数据库实例的数据恢复演练报告;
报告推送模块60,用于向上述备份数据库实例的业务终端推送上述报告生成模块生成的上述数据恢复演练报告。
在一种可能的实施方式中,请一并参见图5,上述数据库的数据恢复演练装置还包括:
备份模块70,用于判断数据库的环境类型,若上述数据库的环境类型为生产环境,则对上述数据库的数据库实例进行备份以得到上述数据库的备份数据库实例。
在一种可能的实施方式中,上述演练执行模块30包括:
第一确定单元301,用于在上述数据恢复演练时间到来时,确定当前恢复时间窗口数据恢复可用区中数据恢复演练任务的数量是否大于或者等于任务数量阈值;
演练单元302,用于在上述第一确定单元301确定上述数据恢复可用区中数据恢复演练任务的数量小于任务数量阈值时,执行基于上述数据恢复演练计划对上述备份数据库实例进行恢复演练并在恢复演练完成时生成临时数据库实例的步骤;
第一时间更改单元303,用于若根据上述第一确定单元301确定的上述数据恢复可用区中数据恢复演练任务的数量大于或者等于任务数量阈值时,将上述备份数据库实例的数据恢复演练时间更改为当前恢复时间窗口的下一个恢复时间窗口。
在一种可能的实施方式中,上述演练执行模块30还包括:
提示推送单元304,用于在上述数据恢复演练时间到来时,若上述数据恢复演练时间与变更窗口时间冲突,则向云控制平台发送变更窗口时间冲突提示;
第二时间更改单元305,用于从上述云控制平台接收上述云控制平台基于上述变更窗口时间冲突提示返回的数据恢复演练发起时间,并将上述备份数据库实例的数据恢复演练时间更改至上述数据恢复演练发起时间。
在一种可能的实施方式中,上述数据恢复演练计划中还包括上述备份数据库实例关联的多个业务功能实例;上述演练执行模块30还用于:
调用上述备份数据库实例关联的各业务功能实例关联的各功能模块,通过上述各功能模块执行上述各业务功能实例的数据恢复演练任务。
在一种可能的实施方式中,上述演练验证模块40包括:
版本号验证单元401,用于验证上述临时数据库实例与上述备份数据库实例的数据库版本号是否一致,若上述临时数据库实例与上述备份数据库实例的数据库版本号一致则确定上述备份数据库实例的恢复演练成功;
位置验证单元402,用于验证上述临时数据库实例与上述备份数据库实例的数据库日志记录的位置是否一致,若上述临时数据库实例与上述备份数据库实例的数据库日志记录的位置一致,则确定上述备份数据库实例的恢复演练成功。
在一种可能的实施方式中,上述数据库的数据恢复演练装置还包括:
清除模块80,用于在上述备份数据库实例的恢复演练成功之后,清除上述临时数据库实例。
在一种可能的实施方式中,上述备份数据库实例为上述数据库中的第一备份数据库实例,上述根据上述数据库实例信息制定上述备份数据库实例对应的数据恢复演练计划之后;
上述获取模块110还用于:
在检测到上述数据库的第二备份数据库实例时,获取上述第二备份数据库实例的数据库实例信息;
上述演练制定模块20还用于:
根据上述第二备份数据库实例的数据库实例信息制定上述第二备份数据库实例对应的数据恢复演练计划;
其中,上述第二备份数据库实例为上述数据库中在上述第一备份数据库实例之后生成并完成备份的数据库实例,上述第二备份数据库实例的数据恢复演练时间在上述第一备份数据库实例的数据恢复演练时间之后。
在一种可能的实施方式中,上述报告生成模块50还用于:
确定数据恢复演练报告的生成时间维度,基于上述数据库中一个生成时间维度内生成的各备份数据库实例的数据恢复演练报告生成上述数据库的数据恢复演练报告;
其中,上述生成时间维度包括年度、季度或者月度,上述一个生成时间维度包括一年、一个季度或者一个月。
在一种可能的实施方式中,上述报告推送模块60还包括:
接收单元601,用于接收业务终端的演练报告获取请求,上述演练报告获取请求中携带数据恢复演练报告的推送路径和目标生成时间维度;
第二确定单元602,用于从上述数据库中确定出基于上述接收单元601接收的演练报告获取请求中携带的目标生成时间维度内生成的目标数据库恢复演练报告。
推送单元603,用于基于上述接收单元601接收的演练报告获取请求中携带的推送路径向上述业务终端推送上述目标数据库恢复演练报告。
其中,该获取模块10、演练制定模块20、演练执行模块30、演练验证模块40、报告生成模块50、报告推送模块60、备份模块70以及清除模块80的具体实现方式可以参见上述图2所对应实施例中对步骤S101-步骤S105的描述和/或上述图3所对应实施例中对步骤S201-步骤S206的描述,这里将不再继续进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
进一步地,请参见图6,图6是本申请提供的计算机设备的一结构示意图。如图6所示,该计算机设备1000可以包括:至少一个处理器1001,例如CPU,至少一个网络接口1004,收发器1003,存储器1005,至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中网络接口1004可选地可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速随机存储记忆体(random access memory,RAM)存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选地还可以是至少一个位于远离前述处理器1001的存储装置。如图6所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块以及设备控制应用程序。
在图6所示的计算机设备1000中,网络接口1004主要用于用户终端进行网络通信;而处理器1001和收发器1003可以用于调用存储器1005中存储的设备控制应用程序,以实现:
上述收发器1003,用于获取数据库的备份数据库实例的数据库实例信息;
上述处理器1001,用于根据上述数据库实例信息制定上述备份数据库实例对应的数据恢复演练计划,上述数据恢复演练计划中至少包括上述备份数据库实例的数据恢复演练时间;
上述处理器1001,还用于当上述数据恢复演练时间到来时,基于上述数据恢复演练计划对上述备份数据库实例进行恢复演练并在恢复演练完成时生成临时数据库实例;
上述处理器1001,还用于根据上述备份数据库实例和上述临时数据库实例确定上述备份数据库实例恢复演练是否成功,若上述备份数据库实例的恢复演练成功,则生成上述备份数据库实例的数据恢复演练报告。
上述收发器1003,还用于向上述备份数据库实例的业务终端推送上述处理器1001生成的数据库恢复演练报告。
在一种可能的实施方式中,上述处理器1001,还用于判断数据库的环境类型,若上述数据库的环境类型为生产环境,则对上述数据库的数据库实例进行备份以得到上述数据库的备份数据库实例。
在一种可能的实施方式中,当上述数据恢复演练时间到来时,上述处理器1001,还用于:
确定当前恢复时间窗口数据恢复可用区中数据恢复演练任务的数量是否大于或者等于任务数量阈值;
若上述数据恢复可用区中数据恢复演练任务的数量小于任务数量阈值,则执行基于上述数据恢复演练计划对上述备份数据库实例进行恢复演练并在恢复演练完成时生成临时数据库实例的步骤;
若上述数据恢复可用区中数据恢复演练任务的数量大于或者等于任务数量阈值,则将上述备份数据库实例的数据恢复演练时间更改为当前恢复时间窗口的下一个恢复时间窗口。
在一种可能的实施方式中,当上述数据恢复演练时间到来时,若上述数据恢复演练时间与变更窗口时间冲突,上述收发器1003,还用于向云控制平台发送变更窗口时间冲突提示,从上述云控制平台接收上述云控制平台基于上述变更窗口时间冲突提示返回的数据恢复演练发起时间,上述处理器1001,还用于将上述备份数据库实例的数据恢复演练时间更改至上述数据恢复演练发起时间。
在一种可能的实施方式中,上述数据恢复演练计划中还包括上述备份数据库实例关联的多个业务功能实例;上述处理器1001用于:
调用上述备份数据库实例关联的各业务功能实例关联的各功能模块,通过上述各功能模块执行上述各业务功能实例的数据恢复演练任务。
在一种可能的实施方式中,上述处理器1001,用于验证上述临时数据库实例与上述备份数据库实例的数据库版本号是否一致,若上述临时数据库实例与上述备份数据库实例的数据库版本号一致则确定上述备份数据库实例的恢复演练成功;
或者,验证上述临时数据库实例与上述备份数据库实例的数据库日志记录的位置是否一致,若上述临时数据库实例与上述备份数据库实例的数据库日志记录的位置一致,则确定上述备份数据库实例的恢复演练成功。
在一种可能的实施方式中,上述处理器1001还用于:
上述备份数据库实例的恢复演练成功之后,清除上述临时数据库实例。
在一种可能的实施方式中,上述备份数据库实例为上述数据库中的第一备份数据库实例;上述根据上述数据库实例信息制定上述备份数据库实例对应的数据恢复演练计划之后,上述处理器1001还用于:
当检测到上述数据库的第二备份数据库实例时,根据上述收发器1003获取的上述第二备份数据库实例的数据库实例信息,制定上述第二备份数据库实例对应的数据恢复演练计划;
其中,上述第二备份数据库实例为上述数据库中在上述第一备份数据库实例之后生成并完成备份的数据库实例,上述第二备份数据库实例的数据恢复演练时间在上述第一备份数据库实例的数据恢复演练时间之后。
一种可能的实施方式中,上述处理器1001还用于:
确定数据恢复演练报告的生成时间维度,基于上述数据库中一个生成时间维度内生成的各备份数据库实例的数据恢复演练报告生成上述数据库的数据恢复演练报告;
其中,上述生成时间维度包括年度、季度或者月度,上述一个生成时间维度包括一年、一个季度或者一个月。
在一种可能的实施方式中,上述收发器1003还用于,接收业务终端的演练报告获取请求,上述演练报告获取请求中携带数据恢复演练报告的推送路径和目标生成时间维度;
上述处理器1001,还用于从上述数据库中确定出从上述收发器1003接收的演练报告获取请求中携带的目标生成时间维度内生成的目标数据库恢复演练报告,上述收发器1003,还用于基于上述推送路径向上述业务终端推送上述目标数据库恢复演练报告。
应当理解,本申请中所描述的计算机设备1000可执行前文图2和/或图3所对应实施例中对该数据库的数据恢复演练方法的描述,也可执行前文图4和/或图5所对应实施例中对该数据库的数据恢复演练装置的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本申请还提供了一种计算机可读存储介质,且该计算机可读存储介质中存储有前文提及的数据库的数据恢复演练装置所执行的计算机程序,且该计算机程序包括程序指令,当该处理器执行该程序指令时,能够执行前文图2和/或图3所对应实施例中对该数据库的数据恢复演练方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。作为示例,程序指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行,分布在多个地点且通过通信网络互连的多个计算设备可以组成区块链系统。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,上述计算机可读存储介质可以是前述任一实施例提供的信息推荐装置或者上述设备的内部存储单元,例如电子设备的硬盘或内存。该计算机可读存储介质也可以是该电子设备的外部存储设备,例如该电子设备上配备的插接式硬盘,智能存储卡(smart media card,SMC),安全数字(securedigital,SD)卡,闪存卡(flash card)等。上述计算机可读存储介质还可以包括磁碟、光盘、只读存储记忆体(read-only memory,ROM)或随机存储记忆体等。进一步地,该计算机可读存储介质还可以既包括该电子设备的内部存储单元也包括外部存储设备。该计算机可读存储介质用于存储该计算机程序以及该电子设备所需的其它程序和数据。该计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本发明的权利要求书和说明书及附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置展示该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (10)
1.一种数据库的数据恢复演练方法,其特征在于,所述方法包括:
获取数据库的备份数据库实例的数据库实例信息,并根据所述数据库实例信息制定所述备份数据库实例对应的数据恢复演练计划,所述数据恢复演练计划中至少包括所述备份数据库实例的数据恢复演练时间;
当所述数据恢复演练时间到来时,基于所述数据恢复演练计划对所述备份数据库实例进行恢复演练并在恢复演练完成时生成临时数据库实例;
根据所述备份数据库实例和所述临时数据库实例确定所述备份数据库实例的恢复演练是否成功;
若所述备份数据库实例的恢复演练成功,则生成所述备份数据库实例的数据恢复演练报告,并向所述备份数据库实例的业务终端推送所述数据恢复演练报告。
2.根据权利要求1所述的方法,其特征在于,当所述数据恢复演练时间到来时,所述方法还包括:
确定当前恢复时间窗口数据恢复可用区中数据恢复演练任务的数量是否大于或者等于任务数量阈值;
若所述数据恢复可用区中数据恢复演练任务的数量小于任务数量阈值,则执行基于所述数据恢复演练计划对所述备份数据库实例进行恢复演练并在恢复演练完成时生成临时数据库实例的步骤;
若所述数据恢复可用区中数据恢复演练任务的数量大于或者等于任务数量阈值,则将所述备份数据库实例的数据恢复演练时间更改为当前恢复时间窗口的下一个恢复时间窗口。
3.根据权利要求1所述的方法,其特征在于,当所述数据恢复演练时间到来时,所述方法还包括:
若所述数据恢复演练时间与变更窗口时间冲突,则向云控制平台发送变更窗口时间冲突提示;
从所述云控制平台接收所述云控制平台基于所述变更窗口时间冲突提示返回的数据恢复演练发起时间,并将所述备份数据库实例的数据恢复演练时间更改至所述数据恢复演练发起时间。
4.根据权利要求2或3所述的方法,其特征在于,所述数据恢复演练计划中还包括所述备份数据库实例关联的多个业务功能实例;所述基于所述数据恢复演练计划对所述备份数据库实例进行恢复演练包括:
调用所述备份数据库实例关联的各业务功能实例关联的各功能模块,通过所述各功能模块执行所述各业务功能实例的数据恢复演练任务。
5.根据权利要求1所述的方法,其特征在于,所述根据所述备份数据库实例和所述临时数据库实例确定所述备份数据库实例的恢复演练是否成功,包括:
验证所述临时数据库实例与所述备份数据库实例的数据库版本号是否一致,若所述临时数据库实例与所述备份数据库实例的数据库版本号一致则确定所述备份数据库实例的恢复演练成功;
或者,验证所述临时数据库实例与所述备份数据库实例的数据库日志记录的位置是否一致,若所述临时数据库实例与所述备份数据库实例的数据库日志记录的位置一致,则确定所述备份数据库实例的恢复演练成功。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述备份数据库实例为所述数据库中的第一备份数据库实例;所述根据所述数据库实例信息制定所述备份数据库实例对应的数据恢复演练计划之后,所述方法还包括:
当检测到所述数据库的第二备份数据库实例时,获取所述第二备份数据库实例的数据库实例信息,并根据所述第二备份数据库实例的数据库实例信息制定所述第二备份数据库实例对应的数据恢复演练计划;
其中,所述第二备份数据库实例为所述数据库中在所述第一备份数据库实例之后生成并完成备份的数据库实例,所述第二备份数据库实例的数据恢复演练时间在所述第一备份数据库实例的数据恢复演练时间之后。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
确定数据恢复演练报告的生成时间维度,基于所述数据库中一个生成时间维度内生成的各备份数据库实例的数据恢复演练报告生成所述数据库的数据库恢复演练报告;
其中,所述生成时间维度包括年度、季度或者月度,所述一个生成时间维度包括一年、一个季度或者一个月。
8.一种数据库的数据恢复演练装置,其特征在于,包括:
获取模块,用于获取数据的备份数据库实例的数据库实例信息;
演练制定模块,用于根据所述获取模块获取的所述数据库实例信息制定所述备份数据库实例对应的数据恢复演练计划,所述数据恢复演练计划中至少包括所述备份数据库实例的数据恢复演练时间;
演练执行模块,用于当所述数据恢复演练时间到来时,基于所述数据恢复演练计划对所述备份数据库实例进行恢复演练并在恢复演练完成时生成临时数据库实例;
演练验证模块,用于根据所述备份数据库实例和所述演练执行模块生成的所述临时数据库实例确定所述备份数据库实例的恢复演练是否成功;
报告生成模块,用于在所述演练验证模块确定所述备份数据库实例的恢复演练成功时,生成所述备份数据库实例的数据恢复演练报告;
报告推送模块,用于向所述备份数据库实例的业务终端推送所述报告生成模块生成的所述数据恢复演练报告。
9.一种计算机设备,其特征在于,包括:处理器、存储器、收发器以及网络接口;
所述处理器与存储器、收发器以及网络接口相连,其中,网络接口用于提供数据通信功能,所述存储器用于存储程序代码,所述收发器和所述处理器用于调用所述程序代码,执行权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令被处理器执行时,执行权利要求1-7任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011511684.3A CN112527564A (zh) | 2020-12-18 | 2020-12-18 | 数据库的数据恢复演练方法、装置及存储介质 |
PCT/CN2021/083494 WO2022126910A1 (zh) | 2020-12-18 | 2021-03-29 | 数据库的数据恢复演练方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011511684.3A CN112527564A (zh) | 2020-12-18 | 2020-12-18 | 数据库的数据恢复演练方法、装置及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112527564A true CN112527564A (zh) | 2021-03-19 |
Family
ID=75001767
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011511684.3A Pending CN112527564A (zh) | 2020-12-18 | 2020-12-18 | 数据库的数据恢复演练方法、装置及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112527564A (zh) |
WO (1) | WO2022126910A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022126910A1 (zh) * | 2020-12-18 | 2022-06-23 | 平安科技(深圳)有限公司 | 数据库的数据恢复演练方法、装置及存储介质 |
CN115292097A (zh) * | 2022-08-22 | 2022-11-04 | 广州鼎甲计算机科技有限公司 | 数据库实例创建方法、装置、设备、存储介质和程序产品 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106095614A (zh) * | 2016-05-27 | 2016-11-09 | 上海新炬网络信息技术有限公司 | 一种数据库容灾演练管控系统 |
CN106776140A (zh) * | 2016-12-21 | 2017-05-31 | 博飞信息科技(上海)有限公司 | 超容灾备恢复一体机的装置及方法 |
US11176002B2 (en) * | 2018-12-18 | 2021-11-16 | Storage Engine, Inc. | Methods, apparatuses and systems for cloud-based disaster recovery |
CN111190769A (zh) * | 2019-12-27 | 2020-05-22 | 柏科数据技术(深圳)股份有限公司 | 一种用于自动演练的灾备技术 |
CN112527564A (zh) * | 2020-12-18 | 2021-03-19 | 平安科技(深圳)有限公司 | 数据库的数据恢复演练方法、装置及存储介质 |
-
2020
- 2020-12-18 CN CN202011511684.3A patent/CN112527564A/zh active Pending
-
2021
- 2021-03-29 WO PCT/CN2021/083494 patent/WO2022126910A1/zh active Application Filing
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022126910A1 (zh) * | 2020-12-18 | 2022-06-23 | 平安科技(深圳)有限公司 | 数据库的数据恢复演练方法、装置及存储介质 |
CN115292097A (zh) * | 2022-08-22 | 2022-11-04 | 广州鼎甲计算机科技有限公司 | 数据库实例创建方法、装置、设备、存储介质和程序产品 |
Also Published As
Publication number | Publication date |
---|---|
WO2022126910A1 (zh) | 2022-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107220142B (zh) | 执行数据恢复操作的方法及装置 | |
CN112073269B (zh) | 区块链网络测试方法、装置、服务器及存储介质 | |
CN108536521B (zh) | 基于仿真平台离线环境核对方法及装置 | |
CN112527564A (zh) | 数据库的数据恢复演练方法、装置及存储介质 | |
US11151025B1 (en) | Generating software test plans based at least in part on monitored traffic of a production application | |
CN112286661B (zh) | 任务调度方法及装置、存储介质、终端 | |
US20210286614A1 (en) | Causality determination of upgrade regressions via comparisons of telemetry data | |
CN113448862B (zh) | 软件版本测试方法、装置及计算机设备 | |
US10635575B2 (en) | Testing of enterprise resource planning systems | |
CN113672350A (zh) | 一种应用处理方法、装置及相关设备 | |
CN109284331B (zh) | 基于业务数据资源的制证信息获取方法、终端设备及介质 | |
CN107220169B (zh) | 一种模拟服务器返回定制化数据的方法和设备 | |
CN114168429A (zh) | 报错分析方法、装置、计算机设备及存储介质 | |
CN113419949B (zh) | 数据处理的异常检测方法、装置、设备及存储介质 | |
CN112596750B (zh) | 应用测试方法、装置、电子设备及计算机可读存储介质 | |
CN112650613B (zh) | 一种错误信息处理方法、装置、电子设备及存储介质 | |
CN113590440A (zh) | 一种银行核心系统的压力测试方法、装置、设备及介质 | |
CN114091909A (zh) | 一种协同开发的方法、系统、装置及电子设备 | |
CN114564358A (zh) | 变更操作的合规性审查方法、装置、设备、介质和产品 | |
CN110618943B (zh) | 安防服务测试方法、装置、电子设备及可读存储介质 | |
CN111240981A (zh) | 一种接口测试方法、系统及平台 | |
CN110221952B (zh) | 业务数据的处理方法及装置、业务数据处理系统 | |
CN112214407A (zh) | 数据校验控制、执行方法及其相应的装置、设备、介质 | |
CN113434399B (zh) | 业务节点日志的处理方法和装置、存储介质及电子装置 | |
CN109257404B (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 |