CN111382012B - MySQL云数据库的备份方法、装置、计算机设备和存储介质 - Google Patents
MySQL云数据库的备份方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN111382012B CN111382012B CN202010139130.9A CN202010139130A CN111382012B CN 111382012 B CN111382012 B CN 111382012B CN 202010139130 A CN202010139130 A CN 202010139130A CN 111382012 B CN111382012 B CN 111382012B
- Authority
- CN
- China
- Prior art keywords
- backup
- cloud database
- mysql
- data
- proxy unit
- 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
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
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种MySQL云数据库的备份方法、装置、计算机设备和存储介质。方法包括:获取云数据库备份任务,提取云数据库备份任务中的云数据库标识,确定云数据库标识对应的MySQL云数据库,根据MySQL云数据库所在的云计算环境,确定云计算环境中用于执行云数据库备份任务的目标备份代理单元,将MySQL云数据库的数据目录共享至目标备份代理单元,在目标备份代理单元中运行预设的备份程序,根据数据目录从MySQL云数据库读取数据进行备份处理。在整个过程中,通过目标备份代理单元来执行备份任务,实现对MySQL云数据库的数据备份,不需要在每个MySQL云数据库上都安装一个备份程序,易于部署,在数据备份过程中不占用MySQL云数据库的计算资源,减少了对MySQL云数据库服务的影响。
Description
技术领域
本申请涉及数据备份技术领域,特别是涉及一种MySQL云数据库的备份方法、装置、计算机设备和存储介质。
背景技术
云计算是将计算任务分布在大量计算机构成的资源池上,使各种应用能够按需获取计算力、存储和信息服务。MySQL云数据库是部署和虚拟化在云计算环境中的MySQL数据库。
对MySQL云数据库的备份普遍是采用传统的MySQL数据库备份方法,在云数据库上安装备份程序,备份数据到云数据库所在的物理机本地,再传输至存储服务器。这种备份处理方式,对于每一个MySQL云数据库,都需要在MySQL云数据库中安装一个备份程序,云数据库中需要同时运行包括备份程序在内的多项程序,影响MySQL云数据库的服务效率。
发明内容
基于此,有必要针对数据备份影响MySQL云数据库的服务效率的问题,提供一种能够减小MySQL云数据库的服务效率影响的MYSQL云数据库的备份方法、装置、计算机设备和存储介质。
一种MySQL云数据库的备份方法,方法包括:
获取云数据库备份任务;
提取云数据库备份任务中的云数据库标识,确定云数据库标识对应的MySQL云数据库;
根据MySQL云数据库所在的云计算环境,确定云计算环境中用于执行云数据库备份任务的目标备份代理单元;
将MySQL云数据库的数据目录共享至目标备份代理单元;
在目标备份代理单元中运行预设的备份程序,根据数据目录从MySQL云数据库读取数据进行备份处理。
在其中一个实施例中,根据MySQL云数据库所在的云计算环境,确定云计算环境中用于执行备份任务的备份代理单元包括:
获取MySQL云数据库所在的云计算环境中的备份代理单元标识集;
当备份代理单元标识集为空集时,在云计算环境中根据预设的备份代理单元镜像,创建一个能运行备份程序且能与MySQL云数据库共享存储目录的资源对象,作为目标备份代理单元。
在其中一个实施例中,在获取MySQL云数据库所在的云计算环境中的备份代理单元标识集之后,还包括:
当备份代理单元标识集为非空集时,获取备份代理单元标识集中各标识对应的备份代理单元的负载量,确定负载量最小的备份代理单元;
将负载量最小的备份代理单元标记为目标备份代理单元。
在其中一个实施例中,在获取各备份代理单元的负载量,确定负载量最小的备份代理单元之后,还包括:
获取负载量最小的备份代理单元的负载上限;
当负载量最小的备份代理单元的负载量到达负载上限时,在云计算环境中创建目标备份代理单元。
在其中一个实施例中,在目标备份代理单元中运行预设的备份程序,根据数据目录从MySQL云数据库读取数据进行备份处理包括:
在目标备份代理单元中运行预设的备份程序,根据数据目录,从MySQL云数据库中读取数据文件;
对数据文件进行备份处理,获取备份处理过程中的生成的新数据页和备份过程中生成的重做日志;
对新数据页和重做日志进行备份处理。
在其中一个实施例中,在目标备份代理单元中运行预设的备份程序,根据数据目录,从MySQL云数据库中读取数据文件之后,还包括:
获取MySQL云数据库的备份日志序列号;
对备份日志序列号进行检测,确定数据文件中的增量备份数据;
对数据文件进行备份处理包括:
对增量备份数据进行备份处理。
在其中一个实施例中,在目标备份代理单元中运行预设的备份程序,根据数据目录从MySQL云数据库读取数据进行备份处理之后,还包括:
对经过备份处理得到的备份数据进行压缩和加密处理;
将经过压缩和加密处理后的备份数据发送至MySQL云数据库对应的预设存储服务器。
一种MySQL云数据库的备份装置,装置包括:
任务获取模块,用于获取云数据库备份任务;
云数据库确定模块,用于提取云数据库备份任务中的云数据库标识,确定云数据库标识对应的MySQL云数据库;
备份代理单元确定模块,用于根据MySQL云数据库所在的云计算环境,确定云计算环境中用于执行云数据库备份任务的目标备份代理单元;
数据目录共享模块,用于将MySQL云数据库的数据目录共享至目标备份代理单元;
备份处理模块,用于在目标备份代理单元中运行预设的备份程序,根据数据目录从MySQL云数据库读取数据进行备份处理。
一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现以下步骤:
获取云数据库备份任务;
提取云数据库备份任务中的云数据库标识,确定云数据库标识对应的MySQL云数据库;
根据MySQL云数据库所在的云计算环境,确定云计算环境中用于执行云数据库备份任务的目标备份代理单元;
将MySQL云数据库的数据目录共享至目标备份代理单元;
在目标备份代理单元中运行预设的备份程序,根据数据目录从MySQL云数据库读取数据进行备份处理。
一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取云数据库备份任务;
提取云数据库备份任务中的云数据库标识,确定云数据库标识对应的MySQL云数据库;
根据MySQL云数据库所在的云计算环境,确定云计算环境中用于执行云数据库备份任务的目标备份代理单元;
将MySQL云数据库的数据目录共享至目标备份代理单元;
在目标备份代理单元中运行预设的备份程序,根据数据目录从MySQL云数据库读取数据进行备份处理。
上述MYSQL云数据库的备份方法、装置、计算机设备和存储介质,通过获取云数据库备份任务,确定待备份的MySQL云数据库,并基于MySQL云数据库所在的云计算环境,确定该云计算环境中的目标备份代理单元,并通过将MySQL云数据库的数据目录共享至目标备份代理单元,在目标备份代理单元中运行预设的备份程序,从而根据数据目录从MySQL云数据库读取数据进行备份处理。在整个过程中,通过目标备份代理单元来执行云数据库备份任务,实现对MySQL云数据库的数据备份,不需要在每个MySQL云数据库上都安装一个备份程序,易于部署,在数据备份过程中不占用MySQL云数据库的计算资源,减少了对MySQL云数据库服务的影响。
附图说明
图1为一个实施例中MYSQL云数据库的备份方法的流程示意图;
图2为另一个实施例中MYSQL云数据库的备份方法的流程示意图;
图3为又一个实施例中MYSQL云数据库的备份方法的流程示意图;
图4为再一个实施例中MYSQL云数据库的备份方法的流程示意图;
图5为还一个实施例中MYSQL云数据库的备份方法的流程示意图;
图6为另一个实施例中MYSQL云数据库的备份方法的流程示意图;
图7为一个实施例中MYSQL云数据库的备份装置的结构框图;
图8为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在一个实施例中,提供了一种MySQL云数据库的备份,本实施例以该方法应用于备份管理平台进行举例说明。备份管理平台用于实现对MySQL云数据库的备份管理,具体包括获取云数据库备份任务,提取云数据库备份任务中的云数据库标识,确定云数据库标识对应的MySQL云数据库,根据MySQL云数据库所在的云计算环境,确定云计算环境中用于执行云数据库备份任务的目标备份代理单元,将MySQL云数据库的数据目录共享至目标备份代理单元,在目标备份代理单元中运行预设的备份程序,根据数据目录从MySQL云数据库读取数据进行备份处理。可以理解的是,备份管理平台可以是终端或是服务器,该方法可以应用于终端或是服务器,还可以应用于包括终端和服务器的系统,并通过终端和服务器的交互实现。本实施例中,如图1所示,该方法包括以下步骤S110至S150。
S110,获取云数据库备份任务。
云数据库备份任务中包括待备份的云数据库的标识。待备份的云数据库是部署和虚拟化在云计算环境中的数据库,包括MySQL云数据库。在实施例中,云数据库备份任务可以包括一个待备份的云数据库标识,也可以包括两个或两个以上的云数据库标识,对于两个或两个以上的云数据库标识,可以在云数据库备份任务中预先设定备份优先级,或是按照云数据库标识在备份任务中的先后顺序依次执行数据备份处理。在其中一个实施例中,备份管理平台可以定时获取预先储存的云数据库备份任务,也可以实时接收由工作人员输入的云数据库备份任务。在其他实施例中,云数据库备份任务还可以包括备份任务的开始执行时间等任务信息。
S120,提取云数据库备份任务中的云数据库标识,确定云数据库标识对应的MySQL云数据库。
云数据库标识用于表征MySQL云数据库,当备份管理平台获取到云数据库备份任务时,通过对云数据库备份任务进行解析,确定待备份的MySQL云数据库的云数据库标识,云数据库标识具体可以是MySQL云数据库的名称或是存储路径等。基于云数据库标识,可以确定云计算环境中对应的MySQL云数据库。
S130,根据MySQL云数据库所在的云计算环境,确定云计算环境中用于执行云数据库备份任务的目标备份代理单元。
云计算是将计算任务分布在大量计算机构成的资源池上,使各种应用能够按需获取计算力、存储和信息服务。云计算环境是部署和虚拟化MySQL数据库,构建MySQL云数据库的环境。基于MySQL云数据库所在的云计算环境,在同一云计算环境中,确定出用于执行云数据库备份任务的目标备份代理单元。备份代理单元是指在云环境中中能运行备份应用的资源对象,可以看作一个逻辑意义上的主机,可以是使用虚拟化技术创建的虚拟机,也可以是使用容器化技术创建的容器,目标备份代理单元是指能够执行云数据库备份任务的备份代理单元,通过在目标备份代理端中运行预设的备份程序来执行云数据库备份任务。在一个具体的实施例中,目标备份代理单元可以是预先创建的备份代理单元,也可以是实时创建的备份代理单元,具体可以通过判断当前是否存在备份代理单元或当前存在的所有的备份代理单元负载已满来实现。
S140,将MySQL云数据库的数据目录共享至目标备份代理单元。
数据目录是由MySQL云数据库中各待备份数据文件的路径地址构成的,用于使目标备份代理单元在运行备份程序时,从MySQL云数据库中读取待备份的数据文件,具体来说,备份管理平台可以通过下发数据目录共享指令至MySQL云数据库,该数据目录共享指令中可以包含目标备份代理单元标识,以使的MySQL云数据库在获取到数据目录共享指令时,将数据目录共享至目标代理备份端标识对应的目标备份代理单元。
S150,在目标备份代理单元中运行预设的备份程序,根据数据目录从MySQL云数据库读取数据进行备份处理。
在将MySQL云数据库的数据目录共享至目标备份代理单元之后,在目标备份代理单元中运行预设的备份程序,在备份程序运行过程中,根据将MySQL云数据库的数据目录从将MySQL云数据库中读取待备份的数据,进行备份处理。在一个实施例中,备份的数据包括MySQL的数据文件、备份过程中产生的新数据页、备份过程中产生的重做日志。
上述MYSQL云数据库的备份方法,通过获取云数据库备份任务,确定待备份的MySQL云数据库,并基于MySQL云数据库所在的云计算环境,确定该云计算环境中的目标备份代理单元,通过目标备份代理端来得到备份程序的运行环境,并通过将MySQL云数据库的数据目录共享至目标备份代理单元,在目标备份代理单元中运行预设的备份程序,从而根据数据目录从MySQL云数据库读取数据进行备份处理。在整个过程中,通过目标备份代理单元来执行云数据库备份任务,实现对MySQL云数据库的数据备份,不需要在每个MySQL云数据库上都安装一个备份程序,易于部署,在数据备份过程中不占用MySQL云数据库的计算资源,减少了对MySQL云数据库服务的影响。
在一个实施例中,根据MySQL云数据库所在的云计算环境,确定云计算环境中用于执行备份任务的备份代理单元包括:获取MySQL云数据库所在的云计算环境中的备份代理单元标识集;当备份代理单元标识集为空集时,在云计算环境中根据预设的备份代理单元镜像,创建一个能运行备份程序且能与MySQL云数据库共享存储目录的资源对象,作为目标备份代理单元。
具体来说,从MySQL云数据库所在的云计算环境中,查找由所有已创建的备份代理单元的标识构成的备份代理单元标识集,并判断备份代理单元标识集是否为空集,若备份代理单元标识集为空集,即MySQL云数据库所在的云计算环境中没有备份代理单元时,使用虚拟化技术,在云计算环境中根据预设的备份代理单元镜像,创建一个能运行备份程序且能与MySQL云数据库共享存储目录的资源对象,并将创建的资源对象作为目标备份代理单元。其中,备份代理单元镜像是一个文件系统,包含了能使备份代理单元正常运行的全部文件,包括备份程序,存储目录共享程序等。基于能使备份代理单元正常运行的全部文件,预先配置得到的备份代理单元镜像,在使用时,可以直接基于备份代理单元镜像来创建目标备份代理单元,任意资源对象都可以基于备份代理单元镜像来创建,简化了资源对象的创建过程。
在一个实施例中,如图2所示,根据MySQL云数据库所在的云计算环境,确定云计算环境中用于执行备份任务的备份代理单元包括步骤S210至S220。
S210,获取MySQL云数据库所在的云计算环境中的备份代理单元标识集。
S220,判断备份代理单元标识集是否为空集。
当判断结果为是时,跳转至步骤S230,当判断结果为否时,跳转至步骤S240。
S230,在云计算环境中根据预设的备份代理单元镜像,创建一个能运行备份程序且能与MySQL云数据库共享存储目录的资源对象,作为目标备份代理单元。
S240,获取备份代理单元标识集中各标识对应的备份代理单元的负载量,确定负载量最小的备份代理单元。
S250,将负载量最小的备份代理单元标记为目标备份代理单元。
当云计算环境中的备份代理单元标识集中存在一个或多个备份代理单元标识时,根据各备份代理单元标识对应的备选备份代理单元,获取备选备份代理单元的负载量,获取负载量最小的备选备份代理单元作为目标备份代理单元,实现了负载均衡,节约计算资源。
具体来说,负载量可以根据备份代理单元当前执行备份任务时的数据流量和任务数量来确定。在其中一个实施例中,首先比较各备选备份代理单元的数据流量,筛选出数据流量最小的备选备份代理单元作为目标备份代理单元,当各备选备份代理单元的数据流量相同时,比较各备选备份代理单元的任务数量,筛选出任务数量最少的备选备份代理单元作为目标备份代理单元。
在其中一个实施例中,如图3所示,在获取各备份代理单元的负载量,确定负载量最小的备份代理单元之后,还包括步骤S310至S320。
S310,获取负载量最小的备份代理单元的负载上限。
S320,判断负载量最小的备份代理单元的负载量是否到达负载上限。
当判断结果为是时,跳转至步骤S230,当判断结果为否时,进入步骤S250。
在一个实施例中,备份代理单元的负载上限包括数据流量上限、任务数量上限以及CPU负载上限。其中负载上限的优先级从高到低依次为数据流量上限、任务数量上限和CPU负载上限,在判断是否到达负载上限时,首先判断备份代理单元的数据流量是否达到上限,当达到数据流量上限时,判定该备份代理单元达到负载上限,当未达到数据流量上限时,判断备份代理单元的任务数量是否达到上限,当达到任务数量上限时,判定该备份代理单元达到负载上限,当未达到任务数量上限时,判断备份代理单元的CPU负载是否达到上限,当达到CPU负载上限时,判定该备份代理单元达到负载上限,当未达到CPU负载上限时,将该备份代理单元标记为目标备份代理单元,否则,在云计算环境中根据预设的备份代理单元镜像,创建一个能运行备份程序且能与MySQL云数据库共享存储目录的资源对象,作为目标备份代理单元。
在一个实施例中,如图4所示,在目标备份代理单元中运行预设的备份程序,根据数据目录从MySQL云数据库读取数据进行备份处理包括步骤S410至S440。
S410,在目标备份代理单元中运行预设的备份程序,根据数据目录,从MySQL云数据库中读取数据文件。
S420,对数据文件进行备份处理;
S430,获取备份处理过程中的生成的新数据页和备份过程中生成的重做日志。
S440,对新数据页和重做日志进行备份处理。
通过在目标备份代理单元中运行预设的备份程序,在程序运行过程中,基于数据目录从MySQL云数据库中读取数据文件,对数据文件进行备份处理。在备份处理过程中,会生成新数据页和重做日志,重做日志恢复操作的关键结构,重做日志包括重做条目,由一组变化向量组成,每个变化向量描述对MySQL云数据库中的单个块所做的更改,通过对新数据页和重做日志进行备份处理,便于后续对备份数据进行恢复。
在其中一个实施例中,如图5所示,在目标备份代理单元中运行预设的备份程序,根据数据目录,从MySQL云数据库中读取数据文件之后,还包括步骤S510至S520;
S510,获取MySQL云数据库的备份日志序列号。
S520,对备份日志序列号进行检测,确定数据文件中的增量备份数据。
S420,对数据文件进行备份处理,包括步骤S530:
S530,对增量备份数据进行备份处理。
备份日志序列号用于记录MySQL云数据库的备份进程,在备份过程中,先检查MySQL云数据库的备份日志序列号,确定已备份的数据文件和未备份的增量备份数据,并对增量备份数据进行备份处理,避免了数据的重复备份,节约了处理资源,提高备份数据的准确性。
在其中一个实施例中,如图6所示,在目标备份代理单元中运行预设的备份程序,根据数据目录从MySQL云数据库读取数据进行备份处理之后,还包括步骤S610至S620。
S610,对经过备份处理得到的备份数据进行压缩和加密处理;
S620,将经过压缩和加密处理后的备份数据发送至MySQL云数据库对应的预设存储服务器。
通过对备份数据进行压缩处理,可以提高备份数据传输至存储服务器的传输效率,通过对备份数据进行加密处理,提高数据传输过程和存储过程的安全线。在一个实施例中,可以采用对称加密算法对备份数据进行加密处理,在确保数据安全性的同时,便于提高加解密过程的处理速度。
应该理解的是,虽然图1-6的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1-6中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图7所示,提供了一种MYSQL云数据库的备份装置,包括:任务获取模块710、云数据库确定模块720、备份代理单元确定模块730数据目录共享模块740和备份处理模块750,其中:
任务获取模块710,用于获取云数据库备份任务。
云数据库确定模块720,用于提取云数据库备份任务中的云数据库标识,确定云数据库标识对应的MySQL云数据库。
备份代理单元确定模块730,用于根据MySQL云数据库所在的云计算环境,确定云计算环境中用于执行云数据库备份任务的目标备份代理单元。
数据目录共享模块740,用于将MySQL云数据库的数据目录共享至目标备份代理单元。
备份处理模块750,用于在目标备份代理单元中运行预设的备份程序,根据数据目录从MySQL云数据库读取数据进行备份处理。
在一个实施例中,备份代理单元确定模块还用于获取MySQL云数据库所在的云计算环境中的备份代理单元标识集;当备份代理单元标识集为空集时,在云计算环境中根据预设的备份代理单元镜像,创建一个能运行备份程序且能与MySQL云数据库共享存储目录的资源对象,作为目标备份代理单元。
在一个实施例中,备份代理单元确定模块还用于当备份代理单元标识集为非空集时,获取备份代理单元标识集中各标识对应的备份代理单元的负载量,确定负载量最小的备份代理单元;将负载量最小的备份代理单元标记为目标备份代理单元。
在一个实施例中,备份代理单元确定模块还用于获取负载量最小的备份代理单元的负载上限;当负载量最小的备份代理单元的负载量到达负载上限时,在云计算环境中创建目标备份代理单元。
在一个实施例中,备份处理模块还用于在目标备份代理单元中运行预设的备份程序,根据数据目录,从MySQL云数据库中读取数据文件;对数据文件进行备份处理,获取备份处理过程中的生成的新数据页和备份过程中生成的重做日志;对新数据页和重做日志进行备份处理。
在一个实施例中,备份处理模块还用于获取MySQL云数据库的备份日志序列号;对备份日志序列号进行检测,确定数据文件中的增量备份数据;对增量备份数据进行备份处理。
在一个实施例中,MYSQL云数据库的备份装置还包括:备份数据存储模块,用于对经过备份处理得到的备份数据进行压缩和加密处理;将经过压缩和加密处理后的备份数据发送至MySQL云数据库对应的预设存储服务器。
上述MYSQL云数据库的备份装置,通过获取云数据库备份任务,确定待备份的MySQL云数据库,并基于MySQL云数据库所在的云计算环境,确定该云计算环境中的目标备份代理单元,通过目标备份代理端来得到备份程序的运行环境,并通过将MySQL云数据库的数据目录共享至目标备份代理单元,在目标备份代理单元中运行预设的备份程序,从而根据数据目录从MySQL云数据库读取数据进行备份处理。在整个过程中,通过目标备份代理单元来执行云数据库备份任务,实现对MySQL云数据库的数据备份,不需要在每个MySQL云数据库上都安装一个备份程序,易于部署,在数据备份过程中不占用MySQL云数据库的计算资源,减少了对MySQL云数据库服务的影响。
关于MYSQL云数据库的备份装置的具体限定可以参见上文中对于MYSQL云数据库的备份方法的限定,在此不再赘述。上述MYSQL云数据库的备份装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储MySQL云数据库的备份数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种MYSQL云数据库的备份方法。
本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
获取云数据库备份任务;
提取云数据库备份任务中的云数据库标识,确定云数据库标识对应的MySQL云数据库;
根据MySQL云数据库所在的云计算环境,确定云计算环境中用于执行云数据库备份任务的目标备份代理单元;
将MySQL云数据库的数据目录共享至目标备份代理单元;
在目标备份代理单元中运行预设的备份程序,根据数据目录从MySQL云数据库读取数据进行备份处理。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取MySQL云数据库所在的云计算环境中的备份代理单元标识集;
当备份代理单元标识集为空集时,在云计算环境中根据预设的备份代理单元镜像,创建一个能运行备份程序且能与MySQL云数据库共享存储目录的资源对象,作为目标备份代理单元。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
当备份代理单元标识集为非空集时,获取备份代理单元标识集中各标识对应的备份代理单元的负载量,确定负载量最小的备份代理单元;
将负载量最小的备份代理单元标记为目标备份代理单元。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取负载量最小的备份代理单元的负载上限;
当负载量最小的备份代理单元的负载量到达负载上限时,在云计算环境中创建目标备份代理单元。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
在目标备份代理单元中运行预设的备份程序,根据数据目录,从MySQL云数据库中读取数据文件;
对数据文件进行备份处理,获取备份处理过程中的生成的新数据页和备份过程中生成的重做日志;
对新数据页和重做日志进行备份处理。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取MySQL云数据库的备份日志序列号;
对备份日志序列号进行检测,确定数据文件中的增量备份数据;
对增量备份数据进行备份处理。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
对经过备份处理得到的备份数据进行压缩和加密处理;
将经过压缩和加密处理后的备份数据发送至MySQL云数据库对应的预设存储服务器。
上述用于实现MYSQL云数据库的备份方法的计算机设备,通过获取云数据库备份任务,确定待备份的MySQL云数据库,并基于MySQL云数据库所在的云计算环境,确定该云计算环境中的目标备份代理单元,通过目标备份代理端来得到备份程序的运行环境,并通过将MySQL云数据库的数据目录共享至目标备份代理单元,在目标备份代理单元中运行预设的备份程序,从而根据数据目录从MySQL云数据库读取数据进行备份处理。在整个过程中,通过目标备份代理单元来执行云数据库备份任务,实现对MySQL云数据库的数据备份,不需要在每个MySQL云数据库上都安装一个备份程序,易于部署,在数据备份过程中不占用MySQL云数据库的计算资源,减少了对MySQL云数据库服务的影响。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取云数据库备份任务;
提取云数据库备份任务中的云数据库标识,确定云数据库标识对应的MySQL云数据库;
根据MySQL云数据库所在的云计算环境,确定云计算环境中用于执行云数据库备份任务的目标备份代理单元;
将MySQL云数据库的数据目录共享至目标备份代理单元;
在目标备份代理单元中运行预设的备份程序,根据数据目录从MySQL云数据库读取数据进行备份处理。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取MySQL云数据库所在的云计算环境中的备份代理单元标识集;
当备份代理单元标识集为空集时,在云计算环境中根据预设的备份代理单元镜像,创建一个能运行备份程序且能与MySQL云数据库共享存储目录的资源对象,作为目标备份代理单元。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
当备份代理单元标识集为非空集时,获取备份代理单元标识集中各标识对应的备份代理单元的负载量,确定负载量最小的备份代理单元;
将负载量最小的备份代理单元标记为目标备份代理单元。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取负载量最小的备份代理单元的负载上限;
当负载量最小的备份代理单元的负载量到达负载上限时,在云计算环境中创建目标备份代理单元。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
在目标备份代理单元中运行预设的备份程序,根据数据目录,从MySQL云数据库中读取数据文件;
对数据文件进行备份处理,获取备份处理过程中的生成的新数据页和备份过程中生成的重做日志;
对新数据页和重做日志进行备份处理。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取MySQL云数据库的备份日志序列号;
对备份日志序列号进行检测,确定数据文件中的增量备份数据;
对增量备份数据进行备份处理。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
对经过备份处理得到的备份数据进行压缩和加密处理;
将经过压缩和加密处理后的备份数据发送至MySQL云数据库对应的预设存储服务器。
上述用于实现MYSQL云数据库的备份方法的计算机可读存储介质,通过获取云数据库备份任务,确定待备份的MySQL云数据库,并基于MySQL云数据库所在的云计算环境,确定该云计算环境中的目标备份代理单元,通过目标备份代理端来得到备份程序的运行环境,并通过将MySQL云数据库的数据目录共享至目标备份代理单元,在目标备份代理单元中运行预设的备份程序,从而根据数据目录从MySQL云数据库读取数据进行备份处理。在整个过程中,通过目标备份代理单元来执行云数据库备份任务,实现对MySQL云数据库的数据备份,不需要在每个MySQL云数据库上都安装一个备份程序,易于部署,在数据备份过程中不占用MySQL云数据库的计算资源,减少了对MySQL云数据库服务的影响。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种MySQL云数据库的备份方法,所述方法包括:
获取云数据库备份任务;
提取所述云数据库备份任务中的云数据库标识,确定所述云数据库标识对应的MySQL云数据库;
根据所述MySQL云数据库所在的云计算环境,确定所述云计算环境中用于执行所述云数据库备份任务的目标备份代理单元;
将所述MySQL云数据库的数据目录共享至所述目标备份代理单元,其中,所述数据目录是由MySQL云数据库中各待备份数据文件的路径地址构成的,用于使目标备份代理单元在运行备份程序时,从MySQL云数据库中读取待备份的数据文件;
在所述目标备份代理单元中运行预设的备份程序,根据所述数据目录从所述MySQL云数据库读取数据进行备份处理。
2.根据权利要求1所述的方法,其特征在于,所述根据所述MySQL云数据库所在的云计算环境,确定所述云计算环境中用于执行所述备份任务的备份代理单元包括:
获取所述MySQL云数据库所在的云计算环境中的备份代理单元标识集;
当所述备份代理单元标识集为空集时,在所述云计算环境中根据预设的备份代理单元镜像,创建一个能运行备份程序且能与MySQL云数据库共享存储目录的资源对象,作为目标备份代理单元。
3.根据权利要求2所述的方法,其特征在于,在所述获取所述MySQL云数据库所在的云计算环境中的备份代理单元标识集之后,还包括:
当所述备份代理单元标识集为非空集时,获取所述备份代理单元标识集中各标识对应的备份代理单元的负载量,确定所述负载量最小的备份代理单元;
将所述负载量最小的备份代理单元标记为目标备份代理单元。
4.根据权利要求3所述的方法,其特征在于,在所述获取所述备份代理单元标识集中各标识对应的备份代理单元的负载量,确定所述负载量最小的备份代理单元之后,还包括:
获取所述负载量最小的备份代理单元的负载上限;
当所述负载量最小的备份代理单元的负载量到达所述负载上限时,在所述云计算环境中创建目标备份代理单元。
5.根据权利要求1所述的方法,其特征在于,所述在所述目标备份代理单元中运行预设的备份程序,根据所述数据目录从所述MySQL云数据库读取数据进行备份处理包括:
在所述目标备份代理单元中运行预设的备份程序,根据所述数据目录,从所述MySQL云数据库中读取数据文件;
对所述数据文件进行备份处理;
获取备份处理过程中的生成的新数据页和备份过程中生成的重做日志;
对所述新数据页和所述重做日志进行备份处理。
6.根据权利要求5所述的方法,其特征在于,在所述目标备份代理单元中运行预设的备份程序,根据所述数据目录,从所述MySQL云数据库中读取数据文件之后,还包括:
获取所述MySQL云数据库的备份日志序列号;
对所述备份日志序列号进行检测,确定所述数据文件中的增量备份数据;
所述对所述数据文件进行备份处理包括:
对所述增量备份数据进行备份处理。
7.根据权利要求1所述的方法,其特征在于,在所述目标备份代理单元中运行预设的备份程序,根据所述数据目录从所述MySQL云数据库读取数据进行备份处理之后,还包括:
对经过所述备份处理得到的备份数据进行压缩和加密处理;
将经过所述压缩和加密处理后的备份数据发送至所述MySQL云数据库对应的预设存储服务器。
8.一种MySQL云数据库的备份装置,其特征在于,所述装置包括:
任务获取模块,用于获取云数据库备份任务;
云数据库确定模块,用于提取所述云数据库备份任务中的云数据库标识,确定所述云数据库标识对应的MySQL云数据库;
备份代理单元确定模块,用于根据所述MySQL云数据库所在的云计算环境,确定所述云计算环境中用于执行所述云数据库备份任务的目标备份代理单元;
数据目录共享模块,用于将所述MySQL云数据库的数据目录共享至所述目标备份代理单元,其中,所述数据目录是由MySQL云数据库中各待备份数据文件的路径地址构成的,用于使目标备份代理单元在运行备份程序时,从MySQL云数据库中读取待备份的数据文件;
备份处理模块,用于在所述目标备份代理单元中运行预设的备份程序,根据所述数据目录从所述MySQL云数据库读取数据进行备份处理。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010139130.9A CN111382012B (zh) | 2020-03-03 | 2020-03-03 | MySQL云数据库的备份方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010139130.9A CN111382012B (zh) | 2020-03-03 | 2020-03-03 | MySQL云数据库的备份方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111382012A CN111382012A (zh) | 2020-07-07 |
CN111382012B true CN111382012B (zh) | 2020-12-29 |
Family
ID=71218557
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010139130.9A Active CN111382012B (zh) | 2020-03-03 | 2020-03-03 | MySQL云数据库的备份方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111382012B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112307054B (zh) * | 2020-11-18 | 2023-02-28 | 太原理工大学 | 一种双活数据库主备服务器读写方法 |
CN115470043B (zh) * | 2022-09-14 | 2023-04-25 | 广州鼎甲计算机科技有限公司 | 数据库备份方法、装置、计算机设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101183323A (zh) * | 2007-12-10 | 2008-05-21 | 华中科技大学 | 一种基于指纹的数据备份系统 |
CN106354583A (zh) * | 2016-08-30 | 2017-01-25 | 广州鼎甲计算机科技有限公司 | 一种MySQL数据库的热备份方法与系统 |
CN106933703A (zh) * | 2015-12-30 | 2017-07-07 | 阿里巴巴集团控股有限公司 | 一种数据库数据备份的方法、装置及电子设备 |
CN107819891A (zh) * | 2017-10-16 | 2018-03-20 | 平安科技(深圳)有限公司 | 数据处理方法、装置、计算机设备和存储介质 |
CN108241555A (zh) * | 2016-12-26 | 2018-07-03 | 阿里巴巴集团控股有限公司 | 一种分布式数据库的备份、恢复方法、装置和服务器 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8484162B2 (en) * | 2008-06-24 | 2013-07-09 | Commvault Systems, Inc. | De-duplication systems and methods for application-specific data |
US9639428B1 (en) * | 2014-03-28 | 2017-05-02 | EMC IP Holding Company LLC | Optimized backup of clusters with multiple proxy servers |
-
2020
- 2020-03-03 CN CN202010139130.9A patent/CN111382012B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101183323A (zh) * | 2007-12-10 | 2008-05-21 | 华中科技大学 | 一种基于指纹的数据备份系统 |
CN106933703A (zh) * | 2015-12-30 | 2017-07-07 | 阿里巴巴集团控股有限公司 | 一种数据库数据备份的方法、装置及电子设备 |
CN106354583A (zh) * | 2016-08-30 | 2017-01-25 | 广州鼎甲计算机科技有限公司 | 一种MySQL数据库的热备份方法与系统 |
CN108241555A (zh) * | 2016-12-26 | 2018-07-03 | 阿里巴巴集团控股有限公司 | 一种分布式数据库的备份、恢复方法、装置和服务器 |
CN107819891A (zh) * | 2017-10-16 | 2018-03-20 | 平安科技(深圳)有限公司 | 数据处理方法、装置、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111382012A (zh) | 2020-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110209652B (zh) | 数据表迁移方法、装置、计算机设备和存储介质 | |
CN111143133B (zh) | 虚拟机备份方法和备份虚拟机恢复方法 | |
US8782008B1 (en) | Dynamic proxy server assignment for virtual machine backup | |
CN110602169B (zh) | 服务调用方法、装置、计算机设备和存储介质 | |
CN114706661B (zh) | 虚拟机的容灾备份方法、系统、计算机设备及存储介质 | |
CN111382012B (zh) | MySQL云数据库的备份方法、装置、计算机设备和存储介质 | |
CN110633208A (zh) | 增量代码覆盖率测试方法及系统 | |
CN110083384B (zh) | 应用程序编程接口创建方法以及装置 | |
CN110267060B (zh) | 视频文件存储注入方法、装置、计算机设备和存储介质 | |
US20130024944A1 (en) | Confidential information leakage prevention system, confidential information leakage prevention method and confidential information leakage prevention program | |
CN110704177A (zh) | 计算任务处理方法、装置、计算机设备和存储介质 | |
CN110727698A (zh) | 数据库访问方法、装置、计算机设备和存储介质 | |
CN111158959A (zh) | 虚拟机备份方法和装置以及虚拟机恢复方法和装置 | |
CN112003895B (zh) | OpenStack云平台中云主机疏散方法、装置、设备及存储介质 | |
CN113886835A (zh) | 容器逃逸的防护方法、装置、计算机设备和存储介质 | |
CN116610498B (zh) | 基于对象存储的数据备份恢复方法、系统、设备及介质 | |
CN114138549A (zh) | 基于kubernetes系统的数据备份和恢复方法 | |
CN114281263A (zh) | 容器集群管理系统的存储资源处理方法、系统和设备 | |
CN113382024B (zh) | 凭据的轮转方法、计算设备及存储介质 | |
US8621606B1 (en) | Systems and methods for identifying external functions called by untrusted applications | |
CN107688479B (zh) | Android系统网络集群及其搭建的方法、Android系统网络集群数据处理的方法和系统 | |
CN112631994A (zh) | 数据迁移方法及系统 | |
CN111431951B (zh) | 一种数据处理方法、节点设备、系统及存储介质 | |
CN114661427B (zh) | 部署容器化应用服务的计算集群的节点管理方法及系统 | |
CN112559248B (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 |