OceanBase v4.3.5 特性解读:通过OSS WORM特性进行备份归档

 概述

OceanBase 最新发布的V4.3.5 中,备份归档服务已适配阿里云OSS的 WORM特性,支持将配置了合规保留策略的OSS Bucket作为备份存储的目的端,有效满足用户数据安全存储与合规性的需求。

阿里云对象存储(OSS)的 WORM(Write Once Read Many)特性,可让用户通过命令为Bucket设置保留策略,在策略规定的Object保留期内,仅支持对Object进行上传和读取。只有当Object保留期限到期后,才能进行修改或删除操作。

使用方式

OceanBase 4.3.5bp2及以上版本支持在设置OSS介质的备份/归档路径时指定enable_worm参数。enable_worm参数默认为false,当设置enable_worm参数为true后,observer对相应路径的写入及删除操作将适配OSS WORM的要求。

1. 注意事项

(1) 仅有OSS介质路径支持设置enable_worm

(2) 设置enable_worm=true时需要设置checksum_type为md5(备份归档路径默认为md5)

(3) enable_worm参数配置不支持变更

(4) 需要用户明确bucket worm策略被正确设置

2. 配置示例

不带enable_worm参数的备份归档路径设置示例

alter system set log_archive_dest='location=oss://example_path/archive?host=cn-heyuan.aliyuncs.com&access_id=AAAAAAAA&acces_key=CCCCCC&checksum_type=md5' tenant=xxxx;
alter system set data_backup_dest='oss://example_path/data?host=cn-heyuan.aliyuncs.com&access_id=AAAAAAAA&acces_key=CCCCCC&checksum_type=md5' tenant=xxxx;

设置enable_worm参数的备份归档路径示例

alter system set log_archive_dest='location=oss://example_path/archive?host=cn-heyuan.aliyuncs.com&access_id=AAAAAAAA&acces_key=CCCCC&checksum_type=md5&enable_worm=true' tenant=xxxx;
alter system set data_backup_dest='oss://example_path/data?host=cn-heyuan.aliyuncs.com&access_id=AAAAAAAA&acces_key=CCCCC&checksum_type=md5&enable_worm=true' tenant=xxxx;

设置成功后可以在视图CDB_OB_BACKUP_STORAGE_INFO、DBA_OB_BACKUP_STORAGE_INFO中extension字段中看到enable_worm参数配置信息

//不带enable_worm参数的备份归档路径设置视图展示结果
MySQL [oceanbase]> select PATH,DEST_TYPE,EXTENSION from CDB_OB_BACKUP_STORAGE_INFO;
+----------------------------+-------------+-------------------+
| PATH                       | DEST_TYPE   | EXTENSION         | 
+----------------------------+-------------+-------------------+
| oss://example_path/archive | archive_log | checksum_type=md5 |
| oss://example_path/data    | backup_data | checksum_type=md5 |
+----------------------------+-------------+-------------------+
//带enable_worm参数的备份归档路径设置视图展示结果
MySQL [oceanbase]> select PATH,DEST_TYPE,EXTENSION from CDB_OB_BACKUP_STORAGE_INFO;
+----------------------------+-------------+----------------------------------------------------------+
| PATH                       | DEST_TYPE   | EXTENSION                                                | 
+----------------------------+-------------+----------------------------------------------------------+
| oss://example_path/archive | archive_log | checksum_type=md5&enable_worm=true                       |
| oss://example_path/data    | backup_data | checksum_type=md5&enable_worm=true                       |
+----------------------------+-------------+----------------------------------------------------------+

备份路径可以在视图CDB_OB_BACKUP_PARAMETER/DBA_OB_BACKUP_PARAMETER中value字段中看到enable_worm参数配置信息

//不带enable_worm参数的备份路径设置视图展示结果
select * from CDB_OB_BACKUP_PARAMETER;
+-----------+------------------+-------------------------------------------------------------------------------------------------------------+
| TENANT_ID | NAME             | VALUE                                                                                                       |
+-----------+------------------+-------------------------------------------------------------------------------------------------------------+
|      1002 | data_backup_dest | oss://example_path/data?host=cn-heyuan.aliyuncs.com&access_id=AAAAAAAA&encrypt_key=CCCCCC&checksum_type=md5 |
+-----------+------------------+-------------------------------------------------------------------------------------------------------------+
//带enable_worm参数的备份路径设置视图展示结果
select * from CDB_OB_BACKUP_PARAMETER;
+-----------+------------------+------------------------------------------------------------------------------------------------------------------------------+
| TENANT_ID | NAME             | VALUE                                                                                                                        |
+-----------+------------------+------------------------------------------------------------------------------------------------------------------------------+
|      1002 | data_backup_dest | oss://example_path/data?host=cn-heyuan.aliyuncs.com&access_id=AAAAAAAA&encrypt_key=CCCCCC&checksum_type=md5&enable_worm=true |
+-----------+------------------+------------------------------------------------------------------------------------------------------------------------------+

归档路径可以在CDB_OB_ARCHIVE_DEST/DBA_OB_ARCHIVE_DEST中看到enable_worm参数配置信息

//不带enable_worm参数的归档路径设置视图展示结果
select * from CDB_OB_ARCHIVE_DEST;
+-----------+---------+-----------------------+---------------------------------------------------------------------------------------------------------------+
| TENANT_ID | DEST_NO | NAME                  | VALUE                                                                                                         |
+-----------+---------+-----------------------+---------------------------------------------------------------------------------------------------------------+
|      1002 |       0 | binding               | OPTIONAL                                                                                                      |
|      1002 |       0 | dest_id               | 1002                                                                                                          |
|      1002 |       0 | path                  | oss://example_path/archive?host=cn-heyuan.aliyuncs.com&access_id=AAAAAAAA&encrypt_key=BBBBBB&checksum_type=md5|
|      1002 |       0 | piece_switch_interval | 1d                                                                                                            |
|      1002 |       0 | state                 | ENABLE                                                                                                        |
+-----------+---------+-----------------------+---------------------------------------------------------------------------------------------------------------+
//带enable_worm参数的归档路径设置视图展示结果
select * from CDB_OB_ARCHIVE_DEST;
+-----------+---------+-----------------------+--------------------------------------------------------------------------------------------------------------------------------+
| TENANT_ID | DEST_NO | NAME                  | VALUE                                                                                                                          |
+-----------+---------+-----------------------+--------------------------------------------------------------------------------------------------------------------------------+
|      1002 |       0 | binding               | OPTIONAL                                                                                                                       |
|      1002 |       0 | dest_id               | 1002                                                                                                                           |
|      1002 |       0 | path                  | oss://example_path/archive?host=cn-heyuan.aliyuncs.com&access_id=AAAAAAAA&encrypt_key=BBBBBB&checksum_type=md5&enable_worm=true|
|      1002 |       0 | piece_switch_interval | 1d                                                                                                                             |
|      1002 |       0 | state                 | ENABLE                                                                                                                         |
+-----------+---------+-----------------------+--------------------------------------------------------------------------------------------------------------------------------+
使用场景说明

使用场景说明

1. 设置路径时未设置enable_worm=true

在将有保留策略的OSS路径设置为备份归档路径时,如果不配置enable_worm=true,该设置语法将报错Incorrect arguments并提示需要设置enable_worm=true。

如果在设置备份归档路径成功后,相应的OSS bucket添加WORM策略:

  • 在备份任务执行过程中可能因为修改或者删除文件失败导致任务失败,在备份相关视图(如CDB_OB_BACKUP_DELETE_JOB_HISTORY)中报错-9140(the object is locked by worm)。
  • 归档可能会因为追加写失败进入interrupt状态,需要看相关归档报错日志是否报-9140(the object is locked by worm)。

在发现备份归档任务因为worm失败后,需要设置新备份/归档路径,并且配置参数enable_worm=true。

2. 设置路径时设置了enable_worm=true

设置enable_worm=true后,observer会适配worm的逻辑执行写操作,避免因为无法修改保留期内的object而导致备份归档任务失败。

因为observer不具有感知oss上worm策略详情的能力,所以备份清理策略仍然按照旧有逻辑执行(官网介绍链接:自动清理过期备份)。备份清理将依据recovery_window选择需要清理的备份集,进而执行清理操作。建议recovery_window值取保留时长需求及恢复需求时长的最大值,如保留期为90天,需要保证可恢复的时长是10天,那么设置recovery_window为90d。

obclient> ALTER SYSTEM ADD DELETE BACKUP POLICY 'default' RECOVERY_WINDOW '90d';

如果备份集在recovery_window之外,但仍在worm保留期内,且清理模式为deleting,那么observer在清理该备份集将失败,在备份相关视图(清理备份相关视图介绍)中将相应失败任务上展示worm相关错误码-9140(the object is locked by worm)。对于tagging模式,observer为备份集打上tag后,oss bucket会在object保留期外且生命周期结束后删除相关object。

worm设置说明

oss worm具体设置方法可以参考oss官方说明使用命令行工具ossutil设置合规保留策略确保指定时间内不能修改和删除OSS数据_对象存储(OSS)-阿里云帮助中心

用户在配置完合规保留策略后查询已创建的合规保留策略是否符合预期。

  • 命令格式
ossutil worm get oss://BucketName
  • 使用示例

查询examplebucket的合规保留策略。

ossutil worm get oss://examplebucket

以下输出结果表明已查询到合规保留策略的配置参数,结果中包含策略ID、状态、保留天数、策略创建时间。

<WormConfiguration><WormId>581D8A7FFA064C80827CAB4076A93A78</WormId><State>Locked</State><RetentionPeriodInDays>360</RetentionPeriodInDays><CreationDate>2021-01-19T03:36:53.000Z</CreationDate>
</WormConfiguration>

需要注意检查查询到的合规保留策略的state需要是Locked状态,并且RetentionPeriodInDays(合规保留时长)符合预期。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.pswp.cn/diannao/86855.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LVS 负载均衡详解:四层转发原理与三种经典模式全面解析

文章目录 一、四层 vs 七层负载均衡&#xff1a;本质区别 四层 LVS 的核心特点&#xff1a; 二、LVS 工作原理概述 三、LVS 三种工作模式对比 模式对比总览 1. LVS-NAT 模式&#xff08;Network Address Translation&#xff09; 2. LVS-DR 模式&#xff08;Direct Routi…

从零手写Java版本的LSM Tree (八):LSM Tree 主程序实现

&#x1f525; 推荐一个高质量的Java LSM Tree开源项目&#xff01; https://github.com/brianxiadong/java-lsm-tree java-lsm-tree 是一个从零实现的Log-Structured Merge Tree&#xff0c;专为高并发写入场景设计。 核心亮点&#xff1a; ⚡ 极致性能&#xff1a;写入速度超…

pycharm 设置环境出错

pycharm 设置环境出错 pycharm 新建项目&#xff0c;设置虚拟环境&#xff0c;出错 pycharm 出错 Cannot open Local Failed to start [powershell.exe, -NoExit, -ExecutionPolicy, Bypass, -File, C:\Program Files\JetBrains\PyCharm 2024.1.3\plugins\terminal\shell-int…

PyTorch深度学习框架60天进阶学习计划-第57天:因果推理模型(一)

第57天&#xff1a;因果推理模型&#xff08;一&#xff09;- 揭开因果关系的神秘面纱 &#x1f3af; 学习目标概览 今天我们要踏入一个既古老又前沿的领域——因果推理&#xff01;如果说传统的机器学习是在找"相关性"&#xff0c;那因果推理就是在挖掘"因果…

Java反射操作百倍性能优化

欢迎来到啾啾的博客&#x1f431;。 记录学习点滴。分享工作思考和实用技巧&#xff0c;偶尔也分享一些杂谈&#x1f4ac;。 有很多很多不足的地方&#xff0c;欢迎评论交流&#xff0c;感谢您的阅读和评论&#x1f604;。 目录 引言避免在性能敏感的热点代码中使用反射缓存反射…

STM32 _main 里做了什么

Application startup 在大多数嵌入式系统中&#xff0c;进入 main 函数之前需要执行一段初始化序列来设置好系统环境。下图展示的就是这段初始化序列的默认流程&#xff1a; Figure 1. Default initialization sequence __main is responsible for setting up the memory and…

Java八股文——MySQL「SQL 基础篇」

NOSQL和SQL的区别&#xff1f; 面试官您好&#xff0c;SQL&#xff08;关系型数据库&#xff09;和NoSQL&#xff08;非关系型数据库&#xff09;是当今数据存储领域的两大主流阵营。它们之间不是“谁取代谁”的关系&#xff0c;而是两种完全不同的设计哲学&#xff0c;适用于…

华为OD机考-数字螺旋矩阵(JAVA 2025B卷)

public class RotateMatrix {public static void main(String[] args) {// 顺时针螺旋矩阵printMatrixV1();// 逆时针螺旋矩阵//printMatrixV2();}private static void printMatrixV2() {Scanner scan new Scanner(System.in);while(scan.hasNextLine()){String[] line scan.…

【Java工程师面试全攻略】Day7:分布式系统设计面试精要

一、分布式系统概述 分布式系统已成为现代互联网应用的标配架构&#xff0c;据LinkedIn统计&#xff0c;分布式系统设计能力是高级Java工程师薪资差异的关键因素。今天我们将深入解析分布式系统的核心理论和实践&#xff0c;帮助你掌握面试中的系统设计问题。 二、分布式理论…

Excel处理控件Aspose.Cells教程:在Excel 文件中创建、操作和渲染时间线

您可以使用数据透视表时间轴&#xff0c;而无需调整过滤器来显示日期——这是一种动态过滤器选项&#xff0c;可让您轻松按日期/时间进行过滤&#xff0c;并使用滑块控件放大所需的时间段。Microsoft Excel 允许您通过选择数据透视表&#xff0c;然后单击“插入”>“时间轴”…

Python----神经网络发(神经网络发展历程)

年份网络名称突出点主要成就论文地址1989LeNet首个现代卷积神经网络&#xff08;CNN&#xff09;&#xff0c;引入卷积、池化操作手写数字识别先驱&#xff0c;奠定CNN基础MNIST Demos on Yann LeCuns website2012AlexNet首次大规模使用深度卷积神经网络进行图像识别&#xff1…

mvc与mvp

mvc MVC 架构中&#xff0c;Activity/Fragment&#xff08;作为 View 和 Controller&#xff09;直接持有 Model 或异步任务的引用&#xff0c;当页面销毁时&#xff0c;这些长生命周期对象若未正确释放&#xff0c;会导致 Activity 无法被 GC 回收&#xff0c;形成内存泄漏。…

商业智能中的地图可视化模板:助力数据高效呈现

引言 在数字化浪潮席卷的当下&#xff0c;数据可视化的重要性愈发凸显。企业和组织需要从海量的数据中提取有价值的信息&#xff0c;以便做出明智的决策。而可视化地图组件作为数据可视化的关键部分&#xff0c;能够将数据与地理位置相结合&#xff0c;以直观、美观的方式展示…

Opencv 相机标定相关API及原理介绍

Opencv 相机标定相关API及原理介绍 相机标定是计算机视觉中的基础任务,旨在确定相机的​​内参矩阵​​、​​畸变系数​​以及(可选)​​外参​​(相机相对于世界坐标系的旋转和平移)。OpenCV提供了完整的相机标定工具链,核心函数为cv2.calibrateCamera,其原理基于张正…

深入剖析AI大模型:Prompt 从理论框架到复杂任务的全场景实现

今天我们就Prompt实战&#xff0c;实现一下复杂场景&#xff0c;通过这些实战我们就可以更好的理解大模型工作的原理和机制了。我个人觉得Prompt是AI大模型中非常重要的的环节。首先我们还是温习一下Prompt的框架和基础原则。然后我们就文本生成、问答任务及复杂任务三个方面分…

Fractal Generative Models论文阅读笔记与代码分析

何恺明分型模型这篇文章在二月底上传到arXiv预出版网站到现在已经过了三个月&#xff0c;当时我也听说这篇文章时感觉是大有可为&#xff0c;但是几个月不知道忙啥了&#xff0c;可能错过很多机会&#xff0c;但是亡羊补牢嘛&#xff0c;而且截至目前&#xff0c;该文章应该也还…

IntelliJ IDEA代码提示忽略大小写设置详解

目录 前言一、设置步骤1. 打开设置界面2. 进入代码补全设置3. 配置大小写敏感选项新版本&#xff08;2023及以上&#xff09;旧版本&#xff08;2022及以下&#xff09; 4. 保存并应用设置 二、效果验证示例三、注意事项与常见问题1. **适用范围**2. **版本兼容性**3. **设置未…

Oracle集群OCR磁盘组掉盘问题处理

问题描述 填写问题的基础信息。 系统名称 - IP地址 - 操作系统 HP-UNIX 数据库 Oracle 11.2.0.4 两节点RAC 症状表现 问题的症状表现如下 集群的OCR磁盘组掉了一块盘(/dev/rdisk/disk52): 查询集群仲裁盘发现只有两块&#xff08;原来是有三块&#xff09;&#xff…

在WordPress中彻底关闭生成缩略图的方法

在WordPress中彻底关闭生成缩略图有多种方法&#xff0c;以下是几种常见的方法&#xff1a; 方法一&#xff1a;通过修改主题的functions.php文件 登录WordPress后台&#xff1a;进入WordPress后台管理界面。 编辑主题文件&#xff1a; 在左侧菜单中找到“外观”选项&#…

安全-Linux基线核查项点

Linux基线加固/整改 1.限制超级管理员远程登录 修改远程管理程序ssh的配置文件 vi /etc/ssh/sshd_config PermitRootLogin no 重启sshd服务 systemctl restart sshd 2. 修改默认密码生存周期 一个好的密码时间策略如下&#xff1a; vi /etc/login.defs PASS_MAX_DAY 90 最长…