一种WAL批量管理方法、系统、装置及存储介质制造方法及图纸

技术编号:37626781 阅读:20 留言:0更新日期:2023-05-18 12:18
本发明专利技术涉及一种WAL批量管理方法、系统、装置及存储介质。其中方法包括移除WAL的方法及恢复WAL的方法,其中,移除WAL的方法包括以下步骤:查询WWID,访问WWID对应的SAN存储,查看SAN存储中数据库的控制文件,获取当前数据库检查点的WAL,并记录其WAL号;获取SAN存储中存储的WAL列表;根据指定的数量,进行备份与删除SAN存储中的WAL;恢复WAL的方法包括以下步骤:查询WWID,获取暂存目录中存储的WAL的列表。根据指定的数量,从暂存目录中恢复WAL至SAN存储中。与现有技术相比,本发明专利技术在单一的WAL挪移命令的基础上,添加了保护数据库恢复和保护复制链路的功能,同时可指定删除WAL的数量,在不影响数据库工作的同时实现WAL的批量管理功能。响数据库工作的同时实现WAL的批量管理功能。响数据库工作的同时实现WAL的批量管理功能。

【技术实现步骤摘要】
一种WAL批量管理方法、系统、装置及存储介质


[0001]本专利技术涉及数据库
,尤其是涉及一种WAL批量管理方法、系统、装置及存储介质。

技术介绍

[0002]PolarDB是阿里云自主研发的新一代关系型云原生数据库,既拥有分布式设计的低成本优势,又具有集中式的易用性。PolarDB采用存储计算分离、软硬一体化设计,满足大规模应用场景需求。
[0003]WAL是(Write Ahead Log)WAL的缩写,是数据库系统中常见的一种手段,用于保证数据操作的原子性和持久性。
[0004]PolarDB的架构是多实例、共享存储的架构。多个实例和共享存储等其他组件,组成了一个数据库集群。每个数据库集群使用一个共享存储。数据文件与WAL共同存储在共享存储中。每个数据库集群使用的共享存储大小是有上限的,上限可扩容,但扩容需要流程以及时间。
[0005]在突发大量DML(Data Manipulation Language,数据操纵语言)业务发生时,会产生大量WAL占用共享存储空间,当共享存储空间满时,预期是数据库处于不可写、只能读的状态,但还可能使得数据库进入无法启动的状态,影响数据库的使用,目前PolarDB缺乏处理大量WAL的方法以及功能,因此,目前亟需一个能够针对PolarDB实现WAL批量管理的实现方法。

技术实现思路

[0006]本专利技术的目的就是为了克服上述现有技术存在的缺陷而提供一种WAL批量管理方法、系统、装置及存储介质。
[0007]本专利技术的目的可以通过以下技术方案来实现:
[0008]一种WAL批量管理方法,包括移除WAL的方法及恢复WAL的方法,其中,移除WAL的方法包括以下步骤:
[0009]S01、查询WWID;
[0010]S02、根据S01的WWID,访问WWID对应的SAN存储,查看SAN存储中数据库的控制文件,获取当前数据库检查点的WAL,并记录其WAL号;
[0011]S03、根据S01的WWID,获取SAN存储中存储的WAL列表;
[0012]S04、根据指定的数量,进行备份与删除SAN存储中的WAL;
[0013]恢复WAL的方法包括以下步骤:
[0014]S11、查询WWID;
[0015]S12、根据S11的WWID,获取暂存目录中存储的WAL的列表。
[0016]S13、根据指定的数量,从所述暂存目录中恢复WAL至SAN存储中。
[0017]进一步地,步骤S04包括以下子步骤:
[0018]创建一个暂存目录;
[0019]从S03中获取的WAL列表中获取指定数量的WAL并形成删除列表,所述删除列表中的WAL号小于S02获取的数据库检查点的WAL号;
[0020]将删除列表中的WAL复制到暂存目录中;
[0021]将删除列表中的WAL从SAN存储中删除。
[0022]进一步地,步骤S13包括以下子步骤:
[0023]从暂存目录中获取WAL文件列表,该文件列表中的WAL不带后缀;
[0024]根据指定的数量,依次将暂存目录中的每一个WAL复制到SAN存储中,并将暂存目录中对应的WAL文件加上文件后缀。
[0025]进一步地,针对需要保护复制链路中WAL的情况,移除WAL的方法包括以下步骤:
[0026]S21、查询WWID;
[0027]S22、根据S21的WWID,访问WWID对应的SAN存储,查看SAN存储中数据库的控制文件,获取当前数据库检查点的WAL,并记录其WAL号;
[0028]S23、获取SAN存储中的文件,获取数据库端口;
[0029]S24、根据S23获取的数据库端口,得到复制链路当前正在使用的WAL名称,获取复制链路所使用的WAL,并获取复制链路里的最小WAL;
[0030]S25、根据S21的WWID,获取SAN存储中存储的WAL列表;
[0031]S26、根据指定的数量,进行备份与删除SAN存储中的WAL。
[0032]进一步地,步骤S26包括以下子步骤:
[0033]创建一个暂存目录;
[0034]从S25中获取的WAL列表中获取指定数量的WAL并形成删除列表,所述删除列表中的WAL号小于步骤S22获取的数据库检查点的WAL号与步骤S24获取的复制链路中的最小WAL号;
[0035]将删除列表中的WAL复制到暂存目录中;
[0036]将删除列表中的WAL从SAN存储中删除。
[0037]一种WAL批量管理系统,用于实现如上所述的一种WAL批量管理方法,包括移除模块及恢复模块;
[0038]所述移除模块用于备份与删除SAN存储中的WAL;
[0039]所述恢复模块用于恢复WAL至SAN存储中。
[0040]进一步地,所述移除模块执行如下操作:
[0041]S01、查询WWID;
[0042]S02、根据S01的WWID,访问WWID对应的SAN存储,查看SAN存储中数据库的控制文件,获取当前数据库检查点的WAL,并记录其WAL号;
[0043]S03、根据S01的WWID,获取SAN存储中存储的WAL列表;
[0044]S04、根据指定的数量,进行备份与删除SAN存储中的WAL;
[0045]所述恢复模块执行如下操作:
[0046]S11、查询WWID;
[0047]S12、根据S01的WWID,获取暂存目录中存储的WAL的列表。
[0048]S13、根据指定的数量,从所述暂存目录中恢复WAL至SAN存储中。
[0049]一种WAL批量管理装置,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器调用所述程序指令能够执行如上所述的一种WAL批量管理方法。
[0050]一种计算机可读存储介质,包括计算机程序,所述计算机程序能够被处理器执行以实现如上所述的一种WAL批量管理方法。
[0051]与现有技术相比,本专利技术具有以下有益效果:
[0052]1、本专利技术基于PolarDB数据库实现批量处理WAL,可根据指定数量将WAL从SAN存储中删除或恢复,批量处理可缩短故障恢复时间;
[0053]2、本专利技术可识别并保护数据库恢复所需要的WAL,以及保护复制链路所需要的WAL不备挪走,实现WAL批量管理的同时不影响数据库的正常工作;
[0054]3、本专利技术中批量处理WAL的数量可指定,也可以全部处理;
[0055]4、本专利技术恢复WAL时,可指定间隔时间,以防占用大量IO。
附图说明
[0056]图1为移除WAL的方法(1)的流程示意图;
[0057]图2为移除WAL的方法(2)的流程示意图;
[0058]图3为恢复WAL的方法流程示意图。
具体实施方式
[0059]下面结合附图和具体实施例对本专利技术进行详细说明。本实施例以本专利技术技术本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种WAL批量管理方法,其特征在于,包括移除WAL的方法及恢复WAL的方法,其中,移除WAL的方法包括以下步骤:S01、查询WWID;S02、根据S01的WWID,访问WWID对应的SAN存储,查看SAN存储中数据库的控制文件,获取当前数据库检查点的WAL,并记录其WAL号;S03、根据S01的WWID,获取SAN存储中存储的WAL列表;S04、根据指定的数量,进行备份与删除SAN存储中的WAL;恢复WAL的方法包括以下步骤:S11、查询WWID;S12、根据S11的WWID,获取暂存目录中存储的WAL的列表。S13、根据指定的数量,从所述暂存目录中恢复WAL至SAN存储中。2.根据权利要求1所述的一种WAL批量管理方法,其特征在于,步骤S04包括以下子步骤:创建一个暂存目录;从S03中获取的WAL列表中获取指定数量的WAL并形成删除列表,所述删除列表中的WAL号小于S02获取的数据库检查点的WAL号;将删除列表中的WAL复制到暂存目录中;将删除列表中的WAL从SAN存储中删除。3.根据权利要求1所述的一种WAL批量管理方法,其特征在于,步骤S13包括以下子步骤:从暂存目录中获取WAL文件列表,该文件列表中的WAL不带后缀。4.根据指定的数量,依次将暂存目录中的每一个WAL复制到SAN存储中,并将暂存目录中对应的WAL文件加上文件后缀。5.根据权利要求1所述的一种WAL批量管理方法,其特征在于,针对需要保护复制链路中WAL的情况,移除WAL的方法包括以下步骤:S21、查询WWID;S22、根据S21的WWID,访问WWID对应的SAN存储,查看SAN存储中数据库的控制文件,获取当前数据库检查点的WAL,并记录其WAL号;S23、获取SAN存储中的文件,获取数据库端口;S24、根据S23获取的数据库端口,得到复制链路当前正在使用的WAL名称,获取复制链路所使用的WAL,并获取复制链路里的最小WAL;S25、...

【专利技术属性】
技术研发人员:陈天鑫邢迎新
申请(专利权)人:中国人寿保险股份有限公司上海数据中心
类型:发明
国别省市:

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

1