SinoDB备份恢复工具之onbar

news/2024/6/15 14:39:39/文章来源:https://blog.csdn.net/Sinoregal/article/details/137065200

onbar是SinoDB数据库的备份工具之一,它可以根据用户选择的线程数量并行地运行备份或恢复。不同于 ontape,onbar 必须先安装和配置存储管理器,进行才能备份和恢复。

1. onbar功能特性

  • 支持选择具体的存储空间进行备份或恢复

  • 支持基于时间点的恢复

  • 支持执行单独的物理和逻辑恢复

  • 支持并行备份和恢复

  • 支持导入的恢复

  • 支持外部备份与恢复

  • 不支持从云存储进行备份或恢复

2. 了解onbar组件

  onbar 由各种组件组成,,它与存储管理器一起使用来备份和恢复数据。

  • sysutils数据库:其中包含onbar目录表

  • onbar 和 onbar_d 命令行实用程序

  • 系统上存储管理器的 XBSA 共享库

  • onbar活动日志

  • onbar紧急引导文件

  • 用于存储备份的存储介质

3. onbar设置步骤

  在使用onbar之前,用户需要执行以下配置操作

  (1) 配置存储管理器。

  (2) 设置适当的ONCONFIG参数

  (3) 确定逻辑日志备份策略。在使用onbar备份日志时,不能将 LTAPEDEV设置为空。

  onbar会自动备份onconfig、ixbar和oncfg 文件,并将它们保留在onbar 自身的归档内。

4. 配置存储管理器

  使用onbar必须安装和配置存储管理器,才能执行备份和恢复。存储管理器控制用于备份和恢复的存储设备和介质,而 onbar 则负责管理数据移动以及数据库和存储管理器之间的通信。

  onbar 使用 X/Open Backup Services 应用编程接口 (XBSA) 与存储管理系统交换信息。可交换两种类型的信息:控制数据和备份数据。

  • 控制数据 :用于验证 onbar 和 XBSA 是否兼容,跟踪备份对象的历史记录。
  • 备份数据:来自备份或恢复的存储空间、blobspace 或日志文件的实际数据。

  可使用 XBSA 事务通过 onbar 在数据库服务器与存储管理器之间传输数据库对象(存储空间或逻辑日志)。该事务是一种保持数备份和恢复数据一致性的方式。它可保证备份或恢复对象中的所有数据都已在数据库服务器和存储管理器之间传输过,或者没有传输任何数据。每个会话可执行多个 XBSA 事务,每个服务器可执行多个并发会话。

  在使用 onconfig 文件中的 BAR_BSALIB_PATH 配置参数设置 XBSA 库的路径名时,需要指定绝对路径名。不能对 BAR_BSALIB_PATH 使用相对路径名。

5. onbar配置参数

参数说明
BAR_ACT_LOG指定活动日志的完整路径名。
BAR_DEBUGonbar可以调试备份和恢复故障。此参数定义了调试级别,更高的值会生成更详细的信息。该参数值的范围是 0-9。默认值为 0,表示未启用调试。
BAR_DEBUG_LOG指定调试日志的完整路径名。
BAR_MAX_BACKUP定义并行程度,确定要并发运行的备份和恢复进程数
BAR_RETRY指定onbar尝试一备份或恢复操作的次数。默认值为 1。
BAR_NB_XPORT_COUNT指定每个备份或恢复进程用于与SinoDB服务器交换数据的共享内缓冲区数量。此参数的值会影响 onbar 性能。
BAR_XFER_BUF_SIZE以页面为单位指定传输缓冲区的大小。用于备份和恢复的缓冲区大小必须相同。
BAR_PROGRESS_FREQ指定进度消息在备份和恢复操作的onbar活动日志中出现的频率。默认值 0 表示onbar不向活动日志写入任何进度消息。要监视进度,该值不得小于 5 分钟。
BAR_HISTORY指定在使用 onsmsync 工具让旧备份过期时,sysutils 数据库是否维护备份历史。0=从 sysutils 数据库删除过期备份对象的记录;1=将过期备份对象的记录保留在 sysutils 数据库中。
BAR_BSALIB_PATH指定不同存储管理器的共享库(XBSA)。存储管理器和 onbar 依靠共享库来彼此交互。请使用绝对路径名。
BAR_SIZE_FACTOR增大存储空间大小的估算值,然后将该信息传递给存储管理器。
BAR_CKPTSEC_TIMEOUT用来来增加超时期限。
BAR_PERFORMANCE指定要在针对备份和恢复操作的 bar 活动日志中报告的性能统计信息类型。0=关闭性能监视(默认值);1=显示用于在服务器和存储管理器之间传输数据的时间;2=以亚秒级精确度显示时间戳;3=显示时间戳和传输统计信息

6. 使用onbar备份数据

  可使用 onbar 执行以下类型的备份:

  • 标准备份
  • 全系统备份
  • 物理备份

6.1 标准onbar备份

  在标准备份中,数据库服务器在备份每个存储空间时都会为其创建一个检查点。为了保持数据一致性,必须从标准备份恢复逻辑日志。下面给出了标准 onbar 备份的一些示例。

命令说明
onbar -b -L 0对所有在线、非临时的存储空间和使用的逻辑日志执行标准的 0 级备份
onbar -b -L 0 dbs1 dbs2对特定的存储空间(比如两个名为 dbs1 和 dbs2 的存储空间)和逻辑日志执行标准的 0 级备份
onbar -b -L1对所有在线、非临时的存储空间和使用的逻辑日志执行标准的1级备份

6.2 全系统onbar备份

  全系统备份 (onbar -b -w) 基于单个检查点对所有存储空间和逻辑日志执行顺序备份或并行备份。无需逻辑日志便可恢复全系统备份,因为所有存储空间中的数据在此备份中都是一致的。当没有保存逻辑日志时,需要使用-w选项进行恢复。以下列出了全系统 onbar 备份的示例。

命令说明
onbar -b -w -L 0对所有在线的、非临时的存储空间和使用的逻辑日志执行0 级全系统备份
onbar -b -w -L 1对所有在线的、非临时的存储空间和使用的逻辑日志执行1级全系统备份

6.3 onbar物理备份

  物理备份仅备份存储空间,不备份逻辑日志。可以使用 onbar对特定或所有存储空间执行物理备份。例如,onbar -b -p对所有存储空间执行物理备份。

6.4 onbar逻辑日志备份

如果执行标准备份,则必须备份逻辑日志,因为必须同时恢复存储空间和逻辑日志。

命令说明
onbar -b -l执行逻辑日志全备份,但当前的逻辑日志不被备份
onbar -b -l -c关闭并且备份当前的逻辑日志以及其它写满的逻辑日志
onbar -b -l -C指定在逻辑日志写满后连续自动进行备份

6.5 逻辑日志救援

  在冷恢复中,onbar会在恢复根存储空间之前自动备份逻辑日志,除非仅指定了一次物理恢复。为了避免数据丢失,在包含逻辑日志的设备仍然可用时,或者计划仅执行一次物理恢复的时候,可以在开始冷恢复之前手动救援逻辑日志。例如,可以使用onbar -b -l -s 手动救援逻辑日志。

7. 伪onbar备份

  可使用onbar -b -F命令执行伪备份。无论是否存在存储管理器程序,都可以执行该命令,但是不能从伪备份中恢复。在如下情况下使用伪备份:

  • 改变数据库日志模式;
  • 将RAW表变为STANDARD表;
  • 允许用户在不执行备份的情况下使用新的日志、chunk 或者镜像。
  • 当管理员判断不需要备份时;

8. 验证onbar备份

  可以使用以下验证 onbar 备份,逻辑日志未验证。

命令说明
onbar -v验证对所有存储空间的一次备份。逻辑日志未验证。这适用于标准和全系统备份。
onbar -v -f dbsfile验证一个名为 dbsfile 的文件中列出的存储空间的备份。
onbar -v -t “YYYY-MM-DD HH:MM:SS”基于时间点,验证对所有存储空间的备份。

9.使用onbar恢复数据

  可以使用 onbar 执行以下类型的恢复:

  • 冷恢复
  • 热恢复
  • 混合恢复
  • 逻辑日志恢复

9.1 onbar冷恢复

  如果由于一个磁盘故障而导致关键存储空间损坏,从而出现数据库服务器故障,则必须对所有关键存储空间执行冷恢复。要执行冷恢复,数据库服务器必须处于离线状态。冷恢复首先恢复所有关键的存储空间,然后恢复非关键存储空间,最后恢复逻辑日志。完成这些恢复操作后,数据库服务器会进入静默模式。可使用 onmode 命令让其处于联线状态。需要对以下任务之一执行冷恢复:

  • 全系统恢复

  全系统恢复需要进行一个全系统备份,尽管它不需要恢复逻辑日志。如果执行仅使用物理方式的全系统恢复,在完成恢复后,数据库服务器将进入快速恢复模式。可以使用 onmode 命令执行逻辑恢复或让服务器处于联线状态。

命令说明
onbar -r指定一个恢复,如果数据居库服务器处于离线状态,则onbar执行冷恢复;如果服务器处于在线状态或者快速恢复状态,则onbar 执行热恢复。在冷恢复中,-r选项为恢复所有存储空间、抢救的日志和逻辑日志;在热恢复中,-r选项为恢复所有离线的存储空间和逻辑日志
onbar -r -w执行具有自动日志救援功能的全系统恢复。
onbar -r -p -w执行一次仅物理方式的全系统恢复(没有日志救援)。
onbar -r -t “YYYY-MM-DD HH:MM:SS” -w执行一次全系统时间点恢复
  • 时间点恢复

  时间点恢复支持将数据库服务器恢复到它在特定时间点上所处的状态。通常使用它从错误(比如意外丢弃数据库)中恢复。在这种情况下,可以将服务器恢复到丢弃数据库之前的时刻。例如,onbar -r -t “YYYY-MM-DD HH:MM:SS” 命令可以恢复到在指定的时刻或之前提交的事务。

  • 日志点恢复

  日志点恢复类似于时间点恢复。它将数据恢复到指定的逻辑日志中列出的最后提交事务的时刻。onbar -r -n “Log Number” 命令执行日志点恢复,以便恢复到指定的日志编号。

  • 导入的恢复

  在导入的恢复中,数据恢复到与用于备份的数据库服务器实例不同的实例。XBSA 和存储管理器版本必须在备份和恢复操作之间兼容。

  • 重命名数块恢复

  对于重命名数据块恢复,可以在冷恢复期间指定新数据块路径和偏移来重命名数据块。此选项可用于将存储空间恢复到不同于执行备份的路径名的路径名。在完成重命名数据块恢复后,需要执行 0 级归档。例如:

  onbar -r -rename -p /chunk_old -o 0 -n /chunk_new -o 20000
  命令将数据块从 (path: /chunk_old and offset: 0) 重命名为 (path: /chunk_new and offset: 20000)。

9.2 onbar热恢复

  如果存储空间关闭并且数据库服务器未处于离线状态,则可以在热还原中还原非关键存储空间。热恢复需要将逻辑日志前滚到当前的逻辑日志,所以无法使用它来恢复意外丢弃的表或删除的数据。

命令说明
onbar -r在热恢复中,-r选项为恢复所有离线的存储空间和逻辑日志
onbar -r dbs1,dbs2恢复列出的存储空间。如果数据库离线,则需要列出所有关键存储空间(root dbspace或逻辑日志所在的dbspace)
onbar -r -p -w执行一次仅物理方式的全系统恢复(没有日志救援)。
onbar -r -t “YYYY-MM-DD HH:MM:SS” -w执行一次全系统时间点恢复

9.3 onbar混合还原

  混合还原是首先对所有关键存储空间执行冷还原,然后对剩余存储空间执行热还原的过程。因为不是所有存储空间都会在初始冷还原期间还原,所以与对所有存储空间执行冷还原相比,执行混合还原可以让服务器更快地上线。

9.4 onbar逻辑日志还原

  要执行逻辑日志还原,可使用 onbar -r -l 命令。在热还原期间会使用一个临时空间重新放置逻辑日志文件。请确保拥有足够的临时空间来执行逻辑还原。

9.5 onbar可重新开始的还原

  如果在还原期间发生故障,可以从还原失败的位置重新开始还原。RESTARTABLE_RESTORE 参数的默认值为 ON。如果在物理还原期间发生故障,onbar可以在发生故障的级别上在存储空间上重新开始还原。如果在冷逻辑还原期间发生故障,onbar 会从最后一个检查点重新开始执行逻辑还原。可重新开始的还原不适用于热还原的逻辑部分。要重新开始失败的还原,可发出onbar -RESTART 命令。

10. 使用onbar备份注意点

  • 使用onbar工具时,需要配置存储管理器,如PSM或者其他第三方的存储管理器.

  • onbar工具不支持从云存储进行备份或恢复,如果有这方面的需求,建议选择ontape工具。

  • 用PSM作为存储管理器的onbar工具不支持其他主机上的远程备份设备。

更多信息内容请移步星瑞格官方社区,期待大家加入

Sinoregal Tech ForumAsk questions, share solutions, and get to know the Sinoregal community.icon-default.png?t=N7T8https://forum.sinoregal.cn/

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

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

相关文章

Codeforces Round #818 (Div. 2) A-C

人类智慧 A. 题意&#xff1a;求满足1<a,b<n且lcm(a,b)/gcd(a,b)<3的(a,b)的个数 转化 a/gcd*b*gcd<3 可以划归为1*2 1*1 2*1 3*1 1*3 则可以转变成一个统计倍数问题 #include<bits/stdc.h> using namespace std; using ll long long; using pii pair&…

【总结】在嵌入式设备上可以离线运行的LLM--Llama

文章目录 Llama 简介运用另一种&#xff1a;MLC-LLM 一个令人沮丧的结论在资源受限的嵌入式设备上无法运行LLM&#xff08;大语言模型&#xff09;。 一丝曙光&#xff1a;tinyLlama-1.1b&#xff08;10亿参数&#xff0c;需要至少2.98GB的RAM&#xff09; Llama 简介 LLaMA…

【与C++的邂逅】---- 函数重载与引用

关注小庄 顿顿解馋(▿) 喜欢的小伙伴可以多多支持小庄的文章哦 &#x1f4d2; 数据结构 &#x1f4d2; C 引言 : 上一篇博客我们了解了C入门语法的一部分&#xff0c;今天我们来了解函数重载&#xff0c;引用的技术&#xff0c;请放心食用 ~ 文章目录 一. &#x1f3e0; 函数重…

OSPF之单区域配置

文章目录 单区域配置项目背景项目分析拓扑图配置思路基础配置命令查看路由器接口IP地址信息OSPF配置 测试PC1与PC2互通查看OSPF邻居表修改OSPF路由器的router-id完美的OSPF配置命令写法常用查询命令 单区域配置 项目背景 企业内部存在多个部门&#xff0c;分别属于不同的网段…

MyBatis-Plus04(条件构造器)

条件构造器和常用接口 wrapper介绍 Wrapper &#xff1a; 条件构造抽象类&#xff0c;最顶端父类 AbstractWrapper &#xff1a; 用于查询条件封装&#xff0c;生成 sql 的 where 条件 QueryWrapper &#xff1a; 查询条件封装 UpdateWrapper &#xff1a; Update 条件封装 A…

wireshark创建显示过滤器实验简述

伯克利包过滤是一种在计算机网络中进行数据包过滤的技术&#xff0c;通过在内核中插入过滤器程序来实现对网络流量的控制和分析。 在数据包细节面板中创建显示过滤器&#xff0c;显示过滤器可以在wireshark捕获数据之后使用。 实验拓扑图&#xff1a; 实验基础配置&#xff1…

网络故障排查方案(二层环路问题)

出现二层环路的原因 二层环路最大的危害是会产生广播风暴&#xff0c;以太网是一个支持广播的网络&#xff0c;在没有环路的环境重&#xff0c;广播包再网络中以泛红的形式被送出&#xff0c;环路中的广播报文反复来回转发&#xff0c;消耗链路带宽 支持二层环路破坏的协议有&a…

vscode上编辑vba

安装xvba插件更换vscode的工作目录启动扩展服务器在config.json中添加目标工作簿的名称加载excel文件&#xff08;必须带宏的xlsm&#xff09;这个扩展就会自动提取出Excel文件中的代码Export VBA&#xff08;编辑完成的VBA代码保存到 Excel文件 &#xff09;再打开excel文件可…

HTML 点击图片后悬浮放大图片

引入插件 1.viewer.js 2.引入viewer.css 3.引入jquery-viewer.min.js 4.添加图片点击事件function click(){ $(<img>, {src: 图片url }).viewer(show); } 效果图&#xff1a; 可网上自行下载对应插件&#xff0c;或新建相关命名文件后&#xff0c;把我下文的js代码…

一个金融长期主义案例:金融壹账通的财务减亏与生产力创新之路

产业变革正在进入新一轮竞速期&#xff0c;社会对新质生产力的需求越来越迫切。在此背景下&#xff0c;金融业也正在坚定重塑自我、向外赋能的决心。 在微观的企业角度上&#xff0c;改变也正悄然发生。3月18日&#xff0c;在美港股双重上市的金融壹账通公布2023年年度业绩报告…

DHCP原理重磅来袭——走过路过不要错过

目录 一.DHCP来源 &#xff08;1)手工分配缺点 (2)DHCP优点 二.DHCP设备调试 &#xff08;1&#xff09;.基本配置&#xff1a; &#xff08;2&#xff09;接口地址池 1.开启DHCP功能 2.开启DHCP接口地址池功能 3.查看IP地址分配结果 &#xff08;3&#xff09;全局地…

浅谈iOS开发中的自动引用计数ARC

1.ARC是什么 我们知道&#xff0c;在C语言中&#xff0c;创建对象时必须手动分配和释放适量的内存。然而&#xff0c;在 Swift 中&#xff0c;当不再需要类实例时&#xff0c;ARC 会自动释放这些实例的内存。 Swift 使用 ARC 来跟踪和管理应用程序的内存&#xff0c;其主要是由…

3.5网安学习第三阶段第五周回顾(个人学习记录使用)

本周重点 ①SSRF服务器端请求伪造 ②序列化和反序列化 ③Vaudit代码审计 本周主要内容 ①SSRF服务器端请求伪造 一、概述 SSRF: server site request forgery (服务器端请求伪造)。 SSR: 服务端请求&#xff0c;A服务器通过函数向B服务器发送请求。 SSRF发生的前提条件…

鸿蒙实战开发-如何使用后台代理提醒,实现一个简易闹钟

介绍 本篇Codelab将介绍如何使用后台代理提醒&#xff0c;实现一个简易闹钟。要求完成以下功能&#xff1a; 展示指针表盘或数字时间。添加、修改和删除闹钟。展示闹钟列表&#xff0c;并可打开和关闭单个闹钟。闹钟到设定的时间后弹出提醒。将闹钟的定时数据保存到轻量级数据…

论文阅读-多级检查点重新启动MPI应用的共同设计

论文名称&#xff1a;Co-Designing Multi-Level Checkpoint Restart for MPI Applications 摘要—高性能计算&#xff08;HPC&#xff09;系统继续通过包含更多硬件组件来支持更大的应用部署来扩展。关键是&#xff0c;这种扩展往往会减少故障之间的平均时间&#xff0c;从而使…

k8s的pod访问service的方式

背景 在k8s中容器访问某个service服务时有两种方式&#xff0c;一种是把每个要访问的service的ip注入到客户端pod的环境变量中&#xff0c;另一种是客户端pod先通过DNS服务器查找对应service的ip地址&#xff0c;然后在通过这个service ip地址访问对应的service服务 pod客户端…

vue-quill-editor 富文本编辑器(可上传视频图片),组件挂载的方式实现

1.安装 npm install vue-quill-editor --save npm install quill-image-drop-module --save npm install quill-image-resize-module --save2.在组件下面新增组件 QlEditor (1)index.vue <template><div><div idquillEditorQiniu><!-- 基于element…

vulnhub pWnOS v2.0通关

知识点总结&#xff1a; 1.通过模块来寻找漏洞 2.msf查找漏洞 3.通过网站源代码&#xff0c;查看模块信息 环境准备 攻击机&#xff1a;kali2023 靶机&#xff1a;pWnOS v2.0 安装地址&#xff1a;pWnOS: 2.0 (Pre-Release) ~ VulnHub 在安装网址中看到&#xff0c;该靶…

2024年第十届国际虚拟现实大会(ICVR 2024)即将召开!

会议面向虚拟现实、增强现实、人工智能等互联网新技术领域的专家及学者&#xff0c; 致力于共同促进国内外虚拟现实的发展与应用。 2014年至今&#xff0c;ICVR在全球新加坡&#xff0c;美国洛杉矶&#xff0c;中国成都&#xff0c;香港等国家及地区召开&#xff0c;面向虚拟现…

干部任免审批表管理系统(三) 读取Lrmx格式文件数据并存储到实体类中

前言&#xff1a; Lrmx文件本质就是读取xml文件&#xff0c;数据库字段设计和类的属性设计都xml中节点保持了一致。那么就可以用类的反射来实现给字段赋值&#xff0c;这样可以大大节省代码的编写量。 一、加载文件并遍历所有的节点&#xff1a; File f new File(this.…