CN115221156A - 数据库集群扩容方法、装置、计算机设备和存储介质 - Google Patents
数据库集群扩容方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN115221156A CN115221156A CN202110416588.9A CN202110416588A CN115221156A CN 115221156 A CN115221156 A CN 115221156A CN 202110416588 A CN202110416588 A CN 202110416588A CN 115221156 A CN115221156 A CN 115221156A
- Authority
- CN
- China
- Prior art keywords
- database
- capacity expansion
- host
- node
- physical
- 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
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- 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/1448—Management of the data involved in backup or backup restore
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种数据库集群扩容方法、装置、计算机设备和存储介质。所述方法包括:响应业务增量数据所需的目标物理资源大于当前物理主机的剩余物理资源的触发信息,生成数据库集群的跨主机扩容指令;根据跨主机扩容指令,从物理资源池中确定目标物理主机并生成用于跨主机扩容的预占信息;根据预占信息新增目标物理主机的扩容数据库节点,并建立扩容数据库节点与当前物理主机的迁移数据节点的同步关系;响应数据库节点切换指令,当检测到扩容数据库节点新增的第一数据库实例的属性数据为预设数据时,将主数据库由迁移数据库节点的第二数据库实例切换为扩容数据库节点新增的第一数据库实例。采用本方法能够提高数据库集群扩容的效率。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种数据库集群扩容方法、装置、计算机设备和存储介质。
背景技术
数据库集群就是利用两台或者多台数据库服务器,构成一个虚拟单一数据库逻辑映像,向客户端提供透明的数据服务。随着应用系统的业务量增加以及数据访问的增加,需要对数据库集群进行扩容;当前mysql数据库所在的物理主机资源不能满足该mysql数据库的扩容,无法扩容。
目前的数据库集群扩容的是通过运维人员手动寻找物理主机资源,手动方式扩容操作复杂需要耗费大量的时间。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高数据集群扩容的效率的数据库集群扩容方法、装置、计算机设备和存储介质。
一种数据库集群扩容方法,所述方法包括:
响应业务增量数据所需的目标物理资源大于当前物理主机的剩余物理资源的触发信息,生成数据库集群的跨主机扩容指令;
根据所述跨主机扩容指令,从物理资源池中确定目标物理主机并生成用于跨主机扩容的预占信息;
根据所述预占信息新增所述目标物理主机的扩容数据库节点,并建立所述扩容数据库节点与所述当前物理主机的迁移数据节点的同步关系;
响应数据库节点切换指令,对所述扩容数据库节点新增的第一数据库实例的属性数据进行检测;
当所述第一数据库实例的属性数据为预设数据,将主数据库由所述迁移数据库节点的第二数据库实例切换为所述扩容数据库节点新增的第一数据库实例。
在其中一个实施例中,在所述响应业务增量数据所需的目标物理资源大于当前物理主机的剩余物理资源的触发信息,生成跨主机扩容指令之前,所述方法还包括:
接收业务终端发送的数据库集群的扩容请求,所述扩容请求携带业务增量数据所需的物理资源;
响应所述扩容请求,获取当前物理主机的剩余物理资源;
根据所述剩余物理资源和所述业务增量数据所需的物理资源生成扩容方式的触发信息。
在其中一个实施例中,所述根据所述剩余物理资源和所述业务增量数据所需的物理资源生成扩容方式的触发信息,包括:
当所述业务增量数据所需的目标物理资源大于当前物理主机的剩余物理资源时,生成跨主机扩容的触发信息。
在其中一个实施例中,所述根据所述跨主机扩容指令,从物理资源池中确定目标物理主机并生成用于跨主机扩容的预占信息,包括:
根据所述跨主机扩容指令,获取所述物理资源池中各物理主机的剩余物理资源和确保各所述物理主机正常工作的物理资源的预设阈值;
确定物理资源大于所述目标物理资源且小于或等于所述物理资源的预设阈值的物理主机为目标物理主机,并生成用于跨主机扩容的网路地址和域名信息。
在其中一个实施例中,所述当所述第一数据库实例的属性数据为预设数据,将主数据库由所述迁移数据库节点的第二数据库实例切换为所述扩容数据库节点新增的第一数据库实例,包括:
当所述第一数据库实例的权限、账号、内存参数为对应的预设数据且版本信息与所述第一数据库实例与所述第二数据库实例的兼容时,将主数据库由所述迁移数据库节点的第二数据库实例切换为所述扩容数据库节点新增的第一数据库实例。
在其中一个实施例中,所述方法还包括:
对所述扩容数据库节点的域名和所述迁移数据库节点的域名进行切换,以及确定所述第一数据库实例的备份节点。
在其中一个实施例中,所述方法还包括:
当检测到所述第一数据库实例对外提高数据服务功能正常时,删除所述迁移数据库节点。
一种数据库集群扩容装置,所述装置包括:
响应模块,用于响应业务增量数据所需的目标物理资源大于当前物理主机的剩余物理资源的触发信息,生成数据库集群的跨主机扩容指令;
确定模块,用于根据所述跨主机扩容指令,从物理资源池中确定目标物理主机并生成用于跨主机扩容的预占信息;
创建模块,用于根据所述预占信息新增所述目标物理主机的扩容数据库节点,并建立所述扩容数据库节点与所述当前物理主机的迁移数据节点的同步关系;
检测模块,用于响应数据库节点切换指令,对所述扩容数据库节点新增的数据库实例的属性数据进行检测;
切换模块,用于当所述新增的数据库实例的属性数据为预设数据,将主数据库由所述扩容数据库节点的数据库实例切换为所述扩容数据库节点新增的数据库实例。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
响应业务增量数据所需的目标物理资源大于当前物理主机的剩余物理资源的触发信息,生成数据库集群的跨主机扩容指令;
根据所述跨主机扩容指令,从物理资源池中确定目标物理主机并生成用于跨主机扩容的预占信息;
根据所述预占信息新增所述目标物理主机的扩容数据库节点,并建立所述扩容数据库节点与所述当前物理主机的迁移数据节点的同步关系;
响应数据库节点切换指令,对所述扩容数据库节点新增的第一数据库实例的属性数据进行检测;
当所述第一数据库实例的属性数据为预设数据,将主数据库由所述迁移数据库节点的第二数据库实例切换为所述扩容数据库节点新增的第一数据库实例。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
响应业务增量数据所需的目标物理资源大于当前物理主机的剩余物理资源的触发信息,生成数据库集群的跨主机扩容指令;
根据所述跨主机扩容指令,从物理资源池中确定目标物理主机并生成用于跨主机扩容的预占信息;
根据所述预占信息新增所述目标物理主机的扩容数据库节点,并建立所述扩容数据库节点与所述当前物理主机的迁移数据节点的同步关系;
响应数据库节点切换指令,对所述扩容数据库节点新增的第一数据库实例的属性数据进行检测;
当所述第一数据库实例的属性数据为预设数据,将主数据库由所述迁移数据库节点的第二数据库实例切换为所述扩容数据库节点新增的第一数据库实例。
上述数据库集群扩容方法、装置、计算机设备和存储介质,在当前物理主机的剩余物理资源无法满足当前扩容需求时,根据生成的数据库集群的跨主机扩容指令,从物理资源池中确定目标物理主机并生成用于跨主机扩容的预占信息,确保跨主机扩容可以实现;根据预占信息新增目标物理主机的扩容数据库节点,并建立扩容数据库节点与当前物理主机的迁移数据节点的同步关系;即将迁移数据库节点上的全量数据同步到扩容数据库节点上;根据数据库节点切换指令,在检测到扩容数据库节点新增的第一数据库实例的属性数据为预设数据时,进行数据库节点的切换并实现主数据库的确定,即通过新增扩容数据库节点和切换数据节点实现数据集群扩容,简化了数据库集群扩容的操作,缩短了扩容时间,提高了数据库集群扩容的效率。
附图说明
图1为一个实施例中数据库集群扩容方法的应用环境图;
图2为一个实施例中数据库集群扩容方法的流程示意图;
图3为另一个实施例中数据库集群扩容方法的流程示意图;
图4为一个实施例中数据库集群扩容的应用框架示意图;
图5为一个实施例中数据库集群扩容装置的结构框图;
图6为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的数据库集群扩容方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络和服务器104进行通信。终端102响应业务增量数据所需的目标物理资源大于当前物理主机的剩余物理资源的触发信息,生成数据库集群的跨主机扩容指令;根据跨主机扩容指令,从服务器104的物理资源池中确定目标物理主机并生成用于跨主机扩容的预占信息;根据预占信息新增目标物理主机的扩容数据库节点,并建立扩容数据库节点与当前物理主机的迁移数据节点的同步关系;响应数据库节点切换指令,对扩容数据库节点新增的第一数据库实例的属性数据进行检测;当第一数据库实例的属性数据为预设数据,将主数据库由迁移数据库节点的第二数据库实例切换为扩容数据库节点新增的第一数据库实例。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机和平板电脑,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种数据库集群扩容方法,以该方法应用于图1中的终端进行说明,包括以下步骤:
步骤202,响应业务增量数据所需的目标物理资源大于当前物理主机的剩余物理资源的触发信息,生成数据库集群的跨主机扩容指令。
其中,业务增量数据是指人机交换过程中产生的业务数据,例如,业务增量数据可以是物流地址信息、物流快件数量、物流车辆信息等。物理资源是指物理主机的CPU、硬盘容量和内存容量等资源。
具体地,当云数据库用户控制台接收业务终端发送的数据库集群的扩容请求时(即当前mysql数据库所在的物理主机资源不能满足该mysql数据库的扩容),云数据库用户控制台响应扩容请求,并获取当前物理主机的剩余物理资源;其中,扩容请求携带业务增量数据所需的物理资源;根据剩余物理资源和业务增量数据所需的物理资源生成扩容方式的触发信息,比较剩余物理资源和业务增量数据所需的物理资源,即当业务增量数据所需的目标物理资源大于当前物理主机的剩余物理资源时,生成跨主机扩容的触发信息。
可选地当业务增量数据所需的目标物理资源小于或等于当前物理主机的剩余物理资源时,生成本地主机扩容的触发信息,响应业务增量数据所需的目标物理资源小于当前物理主机的剩余物理资源的触发信息,生成数据库集群的本地主机扩容指令,完成数据库集群的本地扩容。
步骤204,根据跨主机扩容指令,从物理资源池中确定目标物理主机并生成用于跨主机扩容的预占信息。
其中,预占信息包括当前物理主机所在网段的VPC(私有云,Virtual PrivateCloud)的子网掩码信息和可用的IP地址。
具体地,云数据库用户控制台响应跨主机扩容指令,从物理资源池中确定用于扩容的目标物理主机,并生成用于跨主机的子网掩码信息和IP地址等信息,得到对应的目标域名。
步骤206,根据预占信息新增目标物理主机的扩容数据库节点,并建立扩容数据库节点与当前物理主机的迁移数据节点的同步关系。
具体地,当云数据库用户控制台响应跨主机扩容指令,从物理资源池中确定用于扩容的目标物理主机,并生成用于跨主机的子网掩码信息和IP地址等信息时,生成扩容订单任务信息;基于扩容订单任务信息,通过调用网络组接口获取用于跨主机的子网掩码信息和IP地址以及域名,将子网掩码信息和IP地址以及域名与目标物理主机进行绑定,新增目标物理主机的扩容数据库节点,在扩容数据节点上创建Docker实例和第一数据库实例(如,Mysql实例)。
建立当前物理主机的迁移数据节点和目标物理主机的扩容数据节点的同步关系,通过调用备份组接口将迁移数据库节点上的全量数据同步到扩容数据库节点的第一数据库实例中,即迁移数据库节点的第二数据库实例为主数据库,扩容数据库节点上的第一数据库实例为从数据库。可选地,通过调用备份组接口可以将原备份数据库节点上的备份数据同步到扩展数据库节点的第一数据库实例中,避免数据丢失,确保数据的完整性。
当建立迁移数据库节点和扩容数据库节点的同步关系后,通过调用云监控编排,并添加配置好的云监控脚本文件和Docker监控脚本文件,通过运行云监控脚本文件和Docker监控脚本同是对扩容数据库节点中的Docker实例和第一数据库实例进行实时监控,并将Docker实例和第一数据库实例的监控信息进行可视化显示。
步骤208,响应数据库节点切换指令,对扩容数据库节点新增的第一数据库实例的属性数据进行检测。
其中,属性数据包括预先赋值给数据库实施例的账号信息和权限信息、数据库内存参数以及数据库实施例的版本号等。属性数据是通过解析工具(例如,云解析)对数据库实施例进行解析的到的。
具体地,云数据库用户控制台接收业务终端发送的数据库节点切换指令,响应接收到的数据节点切换指令,进行主备数据库全线检查,即获取扩容数据库节点的第一数据库实施例的账号信息和权限信息、数据库内存参数以及数据库实施例的版本号等属性数据和迁移数据库节点的第二数据库实施例的版本号,检测第一数据库实施例的账号信息和权限信息是否为可以切换的账号和权限,以及数据库内存参数的参数值是否在预设值范围内(数据库内存参数包括数据库服务器运行、解析、查询以及内部管理所消耗的内存和缓冲池所用的内存),检测第一数据库实施例的版本号与第二数据库实施例的版本号相同,即第一数据库实施例与第二数据库实施例是否兼容,若第一数据库实施例的版本号与第二数据库实施例的版本号不相同,则第二数据库实施例与第一数据库实例不兼容,导致数据写入失败。
步骤210,当第一数据库实例的属性数据为预设数据,将主数据库由迁移数据库节点的第二数据库实例切换为扩容数据库节点新增的第一数据库实例。
具体地,当检测到第一数据库实施例的账号信息和权限信息为可以切换的账号和权限,以及数据库内存参数的参数值在预设值范围内且第一数据库实施例的版本号与第二数据库实施例的版本号相同时,对扩容数据库节点和迁移数据库节点进行切换,即将主数据库由迁移数据库节点的第二数据库实例切换为扩容数据库节点新增的第一数据库实例,将第一数据库实施例的增量数据同步到第二数据实施例中。
上述数据库集群扩容方法中,在当前物理主机的剩余物理资源无法满足当前扩容需求时,根据生成的数据库集群的跨主机扩容指令,从物理资源池中确定目标物理主机并生成用于跨主机扩容的预占信息,确保跨主机扩容可以实现;根据预占信息新增目标物理主机的扩容数据库节点,并建立扩容数据库节点与当前物理主机的迁移数据节点的同步关系;即将迁移数据库节点上的全量数据同步到扩容数据库节点上;根据数据库节点切换指令,在检测到扩容数据库节点新增的第一数据库实例的属性数据为预设数据时,进行数据库节点的切换并实现主数据库的更新,即通过新增扩容数据库节点和切换数据节点实现数据集群扩容,简化了数据库集群扩容的操作,缩短了扩容时间,提高了数据库集群扩容的效率。
在另一个实施例中,如图3所示,提供了一种数据库集群扩容方法,以该方法应用于图1中的终端的云数据库用户控制台为例进行说明,包括以下步骤:
步骤302,接收业务终端发送的数据库集群的扩容请求,扩容请求携带业务增量数据所需的物理资源。
步骤304,响应扩容请求,获取当前物理主机的剩余物理资源。
步骤306,判断当前物理主机的剩余物理资源是否满足本地主机扩容,若是,执行步骤308,否则,执行步骤310。
步骤308,响应业务增量数据所需的目标物理资源小于当前物理主机的剩余物理资源的触发信息,生成数据库集群的本地主机扩容指令,完成数据库集群的本地扩容。
具体地,当业务增量数据所需的目标物理资源小于当前物理主机的剩余物理资源时,即当前物理主机满足本地主机扩容,生成本地主机扩容的触发信息,响应本地主机扩容的触发信息,生成数据库集群的本地主机扩容指令,基于本地主机扩容指令,在本地物理主机上完成数据库集群扩容,本地数据库集群扩容方式采用现有扩容方法实现,在此不做赘述。
步骤310,响应业务增量数据所需的目标物理资源大于当前物理主机的剩余物理资源的触发信息,生成数据库集群的跨主机扩容指令。
具体地,当业务增量数据所需的目标物理资源大于当前物理主机的剩余物理资源时,即当前物理主机不满足本地主机扩容,生成跨主机扩容的触发信息,响应跨主机扩容的触发信息,生成数据库集群的跨主机扩容指令。
步骤312,根据跨主机扩容指令,从物理资源池中确定目标物理主机并生成用于跨主机扩容的预占信息。
具体地,根据跨主机扩容指令,获取物理资源池中各物理主机的剩余物理资源和确保各物理主机正常工作的物理资源的预设阈值;确定物理资源大于目标物理资源且小于或等于物理资源的预设阈值的物理主机为目标物理主机,并生成用于跨主机扩容的网路地址和域名信息;即生成用于跨主机的子网掩码信息和IP地址等信息,得到对应的目标域名。
步骤314,根据预占信息新增目标物理主机的扩容数据库节点,并建立扩容数据库节点与当前物理主机的迁移数据节点的同步关系。
步骤316,响应数据库节点切换指令,对扩容数据库节点新增的第一数据库实例的属性数据进行检测。
步骤318,当第一数据库实例的属性数据为预设数据,将主数据库由迁移数据库节点的第二数据库实例切换为扩容数据库节点新增的第一数据库实例。
具体地,当第一数据库实例的权限、账号、内存参数为对应的预设数据且版本信息与第一数据库实例与第二数据库实例的兼容时,将主数据库由迁移数据库节点的第二数据库实例切换为扩容数据库节点新增的第一数据库实例。
步骤320,对扩容数据库节点的域名和迁移数据库节点的域名进行切换,以及确定第一数据库实例的备份节点。
具体地,当检测到第一数据库实施例的账号信息和权限信息为可以切换的账号和权限,以及数据库内存参数的参数值在预设值范围内且第一数据库实施例的版本号与第二数据库实施例的版本号相同时,对扩容数据库节点和迁移数据库节点进行切换,将主数据库由迁移数据库节点的第二数据库实例切换为扩容数据库节点新增的第一数据库实例后,对扩容数据库节点的域名和迁移数据库节点的域名进行切换,即将旧的第二数据库节点域名切换为新增的第一数据库节点域名,第一数据库节点域名切换为第二数据库节点域名;通过调用备份组接口,将备份节点由第二数据库实施例的迁移数据库节点更新为第一数据库实施例的扩容数据库节点,将数据库节点切换成功的信息反馈给服务器。
步骤322,当检测到第一数据库实例对外提高数据服务功能正常时,删除迁移数据库节点。
具体地,服务器接收到切换成功的信息反馈后生成业务验证指令,将业务验证指令发送至业务终端,业务终端对第一数据库实例进行业务验证,当业务验证通过时,服务器生成数据库节点下线指令,终端中的云数据库管理控制台响应数据库节点下线指令,当检测到第一数据库实例对外提高数据服务功能正常时,通过删除云监控脚本文件和Docker监控脚本文件,以及Docker实例和第一数据库实例的监控信息,删除迁移数据库节点中的Docker实例和第二数据库实例,完成迁移数据库节点的删除,即数据库节点下线完成。
以下为数据库集群扩容的一个应用场景,如图4所示,包括第一终端和第二终端和服务器,其中,第一终端为业务终端,第二终端上集成云数据库用户控制平台和云数据库管理控制平台,服务器上集成ITIL平台(Information Technology InfrastructureLibrary,信息技术基础架构库)。
第一终端向第二终端发送数据库集群的扩容请求,扩容请求携带扩容订单信息,该扩容订单信息中包括业务增量数据所需的物理资源,即所需的CPU、硬盘和内存等;第二终端的云数据库用户控制平台响应扩容请求,获取当前物理主机的剩余物理资源,比较当前物理主机的剩余物理资源是否支持本地主机扩容,当业务增量数据所需的目标物理资源大于当前物理主机的剩余物理资源时,生成跨主机扩容的触发信息;响应跨主机扩容的触发信息,生成数据库集群的跨主机扩容指令,云数据库用户控制台根据跨主机扩容指令,从物理资源池中确定目标物理主机并生成用于跨主机扩容的预占信息,将生成的跨主机扩容指令发送给云数据库管理控制平台,云数据库管理控制平台创建ITIL工单,将ITIL工单发送至ITIL平台上,该ITIL工单包括数据集群扩容数据库节点切换的时间点、数据库节点创建任务和数据库节点删除任务等,执行ITIL工单;当服务器接收第一终端反馈的ITIL工单确认信息时,根据预占信息新增目标物理主机的扩容数据库节点,并建立扩容数据库节点与当前物理主机的迁移数据节点的同步关系,当响应数据库节点切换指令,对扩容数据库节点新增的第一数据库实例的属性数据进行检测;若检测到第一数据库实例的属性数据为预设数据,将主数据库由迁移数据库节点的第二数据库实例切换为扩容数据库节点新增的第一数据库实例,对扩容数据库节点的域名和迁移数据库节点的域名进行切换,以及确定第一数据库实例的备份节点,即切换成功;将切换成功信息发送至服务器,服务器生成业务验证指令,将业务验证指令发送至第一终端,通过第一终端对第一数据库实例进行业务验证,当业务验证通过时,服务器生成数据库节点下线指令,云数据库管理控制台响应数据库节点下线指令,删除迁移数据库节点,下线节点完成。
上述数据库集群扩容方法中,当接收到业务终端发送的扩容请求时,通过预先判断当前物理主机是否满足本地主机扩容,确定适合数据库集群扩容的扩容方式,当当前物理主句不满足本地主机扩容时,根据生成的跨主机扩容指令,从物理资源池中确定目标物理主机并生成用于跨主机扩容的预占信息,根据预占信息新增目标物理主机的扩容数据库节点,并建立扩容数据库节点与当前物理主机的迁移数据节点的同步关系;通过响应数据库节点切换指令完成数据库节点的切换、备份节点的切换和迁移数据库节点的下线;通过自动搜索目标物理主机,自动实现新增数据库实例、数据节点切换等操作,简化了数据库集群扩容的操作,缩短了扩容时间,提高了物理主机的稳定性进而避免数据库中数据的溢出。
应该理解的是,虽然图2-3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-3中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图5所示,提供了一种数据库集群扩容装置,包括:响应模块502、确定模块504、创建模块506、检测模块508和切换模块510,其中:
响应模块502,用于响应业务增量数据所需的目标物理资源大于当前物理主机的剩余物理资源的触发信息,生成数据库集群的跨主机扩容指令。
确定模块504,用于根据跨主机扩容指令,从物理资源池中确定目标物理主机并生成用于跨主机扩容的预占信息。
创建模块506,用于根据预占信息新增目标物理主机的扩容数据库节点,并建立扩容数据库节点与当前物理主机的迁移数据节点的同步关系。
检测模块508,用于响应数据库节点切换指令,对扩容数据库节点新增的数据库实例的属性数据进行检测。
切换模块510,用于当新增的数据库实例的属性数据为预设数据,将主数据库由扩容数据库节点的数据库实例切换为扩容数据库节点新增的数据库实例。
上述数据集群扩容装置中,在当前物理主机的剩余物理资源无法满足当前扩容需求时,根据生成的数据库集群的跨主机扩容指令,从物理资源池中确定目标物理主机并生成用于跨主机扩容的预占信息,确保跨主机扩容可以实现;根据预占信息新增目标物理主机的扩容数据库节点,并建立扩容数据库节点与当前物理主机的迁移数据节点的同步关系;即将迁移数据库节点上的全量数据同步到扩容数据库节点上;根据数据库节点切换指令,在检测到扩容数据库节点新增的第一数据库实例的属性数据为预设数据时,进行数据库节点的切换并实现主数据库的确定,即通过新增扩容数据库节点和切换数据节点实现数据集群扩容,简化了数据库集群扩容的操作,缩短了扩容时间,提高了数据库集群扩容的效率。
在另一个实施例中,提供了一种数据库集群扩容装置,除包括响应模块502、确定模块504、创建模块506、检测模块508和切换模块510之外,还包括:接收模块、获取模块、生成模块和删除模块,其中:
接收模块,用于接收业务终端发送的数据库集群的扩容请求,扩容请求携带业务增量数据所需的物理资源。
在一个实施例中,响应模块502还用于响应扩容请求,获取当前物理主机的剩余物理资源;根据剩余物理资源和业务增量数据所需的物理资源生成扩容方式的触发信息。
响应模块502中包括生成子模块,在一个实施例中,生成模块用于当业务增量数据所需的目标物理资源大于当前物理主机的剩余物理资源时,生成跨主机扩容的触发信息;当业务增量数据所需的目标物理资源小于或等于当前物理主机的剩余物理资源时,生成本地主机扩容的触发信息。
获取模块,用于根据跨主机扩容指令,获取物理资源池中各物理主机的剩余物理资源和确保各物理主机正常工作的物理资源的预设阈值。
在一个实施例中,生成模块还用于确定物理资源大于目标物理资源且小于或等于物理资源的预设阈值的物理主机为目标物理主机,并生成用于跨主机扩容的网路地址和域名信息。
在一个实施例中,切换模块510还用于当第一数据库实例的权限、账号、内存参数为对应的预设数据且版本信息与第一数据库实例与第二数据库实例的兼容时,将主数据库由迁移数据库节点的第二数据库实例切换为扩容数据库节点新增的第一数据库实例。
在一个实施例中,切换模块510还用于对扩容数据库节点的域名和迁移数据库节点的域名进行切换,以及确定第一数据库实例的备份节点。
删除模块,用于当检测到第一数据库实例对外提高数据服务功能正常时,删除迁移数据库节点。
在一个实施例中,终端接收业务终端发送的数据库集群的扩容请求,扩容请求携带业务增量数据所需的物理资源,响应扩容请求,获取当前物理主机的剩余物理资源;判断当前物理主机的剩余物理资源是否满足本地主机扩容,当前物理主机满足本地主机扩容,生成本地主机扩容的触发信息,响应本地主机扩容的触发信息,生成数据库集群的本地主机扩容指令,基于本地主机扩容指令,在本地物理主机上完成数据库集群扩容。
当前物理主机不满足本地主机扩容,生成跨主机扩容的触发信息,响应跨主机扩容的触发信息,生成数据库集群的跨主机扩容指令,根据跨主机扩容指令,从物理资源池中确定目标物理主机并生成用于跨主机扩容的预占信息,根据预占信息新增目标物理主机的扩容数据库节点,并建立扩容数据库节点与当前物理主机的迁移数据节点的同步关系;响应数据库节点切换指令,对扩容数据库节点新增的第一数据库实例的属性数据进行检测;当第一数据库实例的属性数据为预设数据,将主数据库由迁移数据库节点的第二数据库实例切换为扩容数据库节点新增的第一数据库实例;对扩容数据库节点的域名和迁移数据库节点的域名进行切换,以及确定第一数据库实例的备份节点,当检测到第一数据库实例对外提高数据服务功能正常时,删除迁移数据库节点;即通过预先判断当前物理主机是否满足本地主机扩容,确定适合数据库集群扩容的扩容方式,自动实现新增数据库实例、数据节点切换等操作,简化了数据库集群扩容的操作,缩短了扩容时间,提高了物理主机的稳定性进而避免数据库中数据的溢出。
关于数据库集群扩容装置的具体限定可以参见上文中对于数据库集群扩容方法的限定,在此不再赘述。上述数据库集群扩容装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、运营商网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种数据库集群扩容方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
响应业务增量数据所需的目标物理资源大于当前物理主机的剩余物理资源的触发信息,生成数据库集群的跨主机扩容指令;
根据跨主机扩容指令,从物理资源池中确定目标物理主机并生成用于跨主机扩容的预占信息;
根据预占信息新增目标物理主机的扩容数据库节点,并建立扩容数据库节点与当前物理主机的迁移数据节点的同步关系;
响应数据库节点切换指令,对扩容数据库节点新增的第一数据库实例的属性数据进行检测;
当第一数据库实例的属性数据为预设数据,将主数据库由迁移数据库节点的第二数据库实例切换为扩容数据库节点新增的第一数据库实例。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
接收业务终端发送的数据库集群的扩容请求,扩容请求携带业务增量数据所需的物理资源;
响应扩容请求,获取当前物理主机的剩余物理资源;
根据剩余物理资源和业务增量数据所需的物理资源生成扩容方式的触发信息。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
当业务增量数据所需的目标物理资源大于当前物理主机的剩余物理资源时,生成跨主机扩容的触发信息。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
根据跨主机扩容指令,获取物理资源池中各物理主机的剩余物理资源和确保各物理主机正常工作的物理资源的预设阈值;
确定物理资源大于目标物理资源且小于或等于物理资源的预设阈值的物理主机为目标物理主机,并生成用于跨主机扩容的网路地址和域名信息。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
当第一数据库实例的权限、账号、内存参数为对应的预设数据且版本信息与第一数据库实例与第二数据库实例的兼容时,将主数据库由迁移数据库节点的第二数据库实例切换为扩容数据库节点新增的第一数据库实例。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
对扩容数据库节点的域名和迁移数据库节点的域名进行切换,以及确定第一数据库实例的备份节点。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
当检测到第一数据库实例对外提高数据服务功能正常时,删除迁移数据库节点。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
响应业务增量数据所需的目标物理资源大于当前物理主机的剩余物理资源的触发信息,生成数据库集群的跨主机扩容指令;
根据跨主机扩容指令,从物理资源池中确定目标物理主机并生成用于跨主机扩容的预占信息;
根据预占信息新增目标物理主机的扩容数据库节点,并建立扩容数据库节点与当前物理主机的迁移数据节点的同步关系;
响应数据库节点切换指令,对扩容数据库节点新增的第一数据库实例的属性数据进行检测;
当第一数据库实例的属性数据为预设数据,将主数据库由迁移数据库节点的第二数据库实例切换为扩容数据库节点新增的第一数据库实例。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
接收业务终端发送的数据库集群的扩容请求,扩容请求携带业务增量数据所需的物理资源;
响应扩容请求,获取当前物理主机的剩余物理资源;
根据剩余物理资源和业务增量数据所需的物理资源生成扩容方式的触发信息。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
当业务增量数据所需的目标物理资源大于当前物理主机的剩余物理资源时,生成跨主机扩容的触发信息。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
根据跨主机扩容指令,获取物理资源池中各物理主机的剩余物理资源和确保各物理主机正常工作的物理资源的预设阈值;
确定物理资源大于目标物理资源且小于或等于物理资源的预设阈值的物理主机为目标物理主机,并生成用于跨主机扩容的网路地址和域名信息。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
当第一数据库实例的权限、账号、内存参数为对应的预设数据且版本信息与第一数据库实例与第二数据库实例的兼容时,将主数据库由迁移数据库节点的第二数据库实例切换为扩容数据库节点新增的第一数据库实例。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
对扩容数据库节点的域名和迁移数据库节点的域名进行切换,以及确定第一数据库实例的备份节点。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
当检测到第一数据库实例对外提高数据服务功能正常时,删除迁移数据库节点。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种数据库集群扩容方法,其特征在于,所述方法包括:
响应业务增量数据所需的目标物理资源大于当前物理主机的剩余物理资源的触发信息,生成数据库集群的跨主机扩容指令;
根据所述跨主机扩容指令,从物理资源池中确定目标物理主机并生成用于跨主机扩容的预占信息;
根据所述预占信息新增所述目标物理主机的扩容数据库节点,并建立所述扩容数据库节点与所述当前物理主机的迁移数据节点的同步关系;
响应数据库节点切换指令,对所述扩容数据库节点新增的第一数据库实例的属性数据进行检测;
当所述第一数据库实例的属性数据为预设数据,将主数据库由所述迁移数据库节点的第二数据库实例切换为所述扩容数据库节点新增的第一数据库实例。
2.根据权利要求1所述的方法,其特征在于,在所述响应业务增量数据所需的目标物理资源大于当前物理主机的剩余物理资源的触发信息,生成跨主机扩容指令之前,所述方法还包括:
接收业务终端发送的数据库集群的扩容请求,所述扩容请求携带业务增量数据所需的物理资源;
响应所述扩容请求,获取当前物理主机的剩余物理资源;
根据所述剩余物理资源和所述业务增量数据所需的物理资源生成扩容方式的触发信息。
3.根据权利要求2所述的方法,其特征在于,所述根据所述剩余物理资源和所述业务增量数据所需的物理资源生成扩容方式的触发信息,包括:
当所述业务增量数据所需的目标物理资源大于当前物理主机的剩余物理资源时,生成跨主机扩容的触发信息。
4.根据权利要求1所述的方法,其特征在于,所述根据所述跨主机扩容指令,从物理资源池中确定目标物理主机并生成用于跨主机扩容的预占信息,包括:
根据所述跨主机扩容指令,获取所述物理资源池中各物理主机的剩余物理资源和确保各所述物理主机正常工作的物理资源的预设阈值;
确定物理资源大于所述目标物理资源且小于或等于所述物理资源的预设阈值的物理主机为目标物理主机,并生成用于跨主机扩容的网路地址和域名信息。
5.根据权利要求1所述的方法,其特征在于,所述当所述第一数据库实例的属性数据为预设数据,将主数据库由所述迁移数据库节点的第二数据库实例切换为所述扩容数据库节点新增的第一数据库实例,包括:
当所述第一数据库实例的权限、账号、内存参数为对应的预设数据且版本信息与所述第一数据库实例与所述第二数据库实例的兼容时,将主数据库由所述迁移数据库节点的第二数据库实例切换为所述扩容数据库节点新增的第一数据库实例。
6.根据权利要求1或5所述任意一项所述的方法,其特征在于,所述方法还包括:
对所述扩容数据库节点的域名和所述迁移数据库节点的域名进行切换,以及确定所述第一数据库实例的备份节点。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
当检测到所述第一数据库实例对外提高数据服务功能正常时,删除所述迁移数据库节点。
8.一种数据库集群扩容装置,其特征在于,所述装置包括:
响应模块,用于响应业务增量数据所需的目标物理资源大于当前物理主机的剩余物理资源的触发信息,生成数据库集群的跨主机扩容指令;
确定模块,用于根据所述跨主机扩容指令,从物理资源池中确定目标物理主机并生成用于跨主机扩容的预占信息;
创建模块,用于根据所述预占信息新增所述目标物理主机的扩容数据库节点,并建立所述扩容数据库节点与所述当前物理主机的迁移数据节点的同步关系;
检测模块,用于响应数据库节点切换指令,对所述扩容数据库节点新增的数据库实例的属性数据进行检测;
切换模块,用于当所述新增的数据库实例的属性数据为预设数据,将主数据库由所述扩容数据库节点的数据库实例切换为所述扩容数据库节点新增的数据库实例。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110416588.9A CN115221156A (zh) | 2021-04-19 | 2021-04-19 | 数据库集群扩容方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110416588.9A CN115221156A (zh) | 2021-04-19 | 2021-04-19 | 数据库集群扩容方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115221156A true CN115221156A (zh) | 2022-10-21 |
Family
ID=83604377
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110416588.9A Pending CN115221156A (zh) | 2021-04-19 | 2021-04-19 | 数据库集群扩容方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115221156A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116414662A (zh) * | 2023-04-24 | 2023-07-11 | 山东溯源安全科技有限公司 | 一种存储空间扩容提示方法、装置、电子设备及存储介质 |
CN117170882A (zh) * | 2023-11-01 | 2023-12-05 | 新华三信息技术有限公司 | 一种资源分配方法、装置、电子设备及存储介质 |
-
2021
- 2021-04-19 CN CN202110416588.9A patent/CN115221156A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116414662A (zh) * | 2023-04-24 | 2023-07-11 | 山东溯源安全科技有限公司 | 一种存储空间扩容提示方法、装置、电子设备及存储介质 |
CN116414662B (zh) * | 2023-04-24 | 2023-10-10 | 山东溯源安全科技有限公司 | 一种存储空间扩容提示方法、装置、电子设备及存储介质 |
CN117170882A (zh) * | 2023-11-01 | 2023-12-05 | 新华三信息技术有限公司 | 一种资源分配方法、装置、电子设备及存储介质 |
CN117170882B (zh) * | 2023-11-01 | 2024-02-23 | 新华三信息技术有限公司 | 一种资源分配方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110008118B (zh) | 页面数据测试方法、装置、计算机设备和存储介质 | |
US11442790B2 (en) | Resource scheduling system, method and server for ensuring high availability of services | |
CN112019820B (zh) | 界面生成方法和装置 | |
CN109582496B (zh) | 一致性快照组的创建方法、装置及计算机可读存储介质 | |
CN115221156A (zh) | 数据库集群扩容方法、装置、计算机设备和存储介质 | |
CN110704161B (zh) | 虚拟机创建方法、装置及计算机设备 | |
CN112596951A (zh) | 一种nas数据容灾方法、装置、设备及存储介质 | |
CN112311820A (zh) | 边缘设备调度方法、连接方法、装置和边缘设备 | |
CN111158959A (zh) | 虚拟机备份方法和装置以及虚拟机恢复方法和装置 | |
CN107168774B (zh) | 一种基于本地存储的虚拟机迁移方法及系统 | |
CN111222153A (zh) | 应用程序权限管理方法、装置和存储介质 | |
CN104517067A (zh) | 访问数据的方法、装置及系统 | |
EP4080827A1 (en) | Cloud system migration method and device, and hybrid cloud system | |
CN113986539A (zh) | 实现pod固定IP的方法、装置、电子设备和可读存储介质 | |
CN112232902B (zh) | 订单数据处理方法、装置、系统、计算机设备和存储介质 | |
CN111090701B (zh) | 业务请求处理方法、装置、可读存储介质和计算机设备 | |
US9405603B2 (en) | Naming of nodes in net framework | |
CN112711469A (zh) | 云主机迁移方法、装置、计算机设备和存储介质 | |
CN113791798A (zh) | 模型更新方法及装置、计算机存储介质、电子设备 | |
CN111506388A (zh) | 容器性能探测方法、容器管理平台及计算机存储介质 | |
CN107340974B (zh) | 一种虚拟磁盘的迁移方法及迁移装置 | |
CN114138734A (zh) | 基于Web的面向数据库及文件资源的版本管理方法 | |
CN112306373B (zh) | 一种集群扩容方法、系统及电子设备和存储介质 | |
CN114172903A (zh) | slurm调度系统的节点扩容方法、装置、设备和介质 | |
CN114328711A (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 |