onbar -b 语法:备份

使用 onbar -b 命令可备份存储空间和逻辑日志。

要运行 ON-Bar 命令,您必须是用户 root 或用户 gbasedbt,或者是 UNIX™ 上 bargroup 组的成员。

使用 ON-Bar 备份的语法
表 1. onbar -b 命令的选项
选项 描述
-b 指定一个备份

备份存储空间和逻辑日志,包括当前逻辑日志。

dbspace_list 指定要备份的存储空间,以空格分隔。

如果没有输入 dbspace_list-f filenameON-Bar 会备份数据库服务器上所有联机的存储空间。

-c 关闭并备份当前逻辑日志和其他所有逻辑日志。
-C 启动连续日志备份。

因为连续日志备份将无限期运行以等待逻辑日志填满,所以请保留专用存储设备和终端窗口。

要停止连续日志备份,请使用中断命令(例如,CTRL-C 或 SIGTERM)停止 ON-Bar 进程。

-cf 指定是否备份关键文件。

有效值为:

  • yes = 备份关键文件。该值为执行 0 级、1 级或 2 级备份时的缺省值。
  • no = 不备份关键文件。该值为备份逻辑日志文件时的缺省值。
  • only = 仅备份关键文件。
-ffilename 备份 filename 值所指定的文本文件中列出的存储空间。

使用该选项以避免每次备份时都要输入一长串存储空间。

有关更多信息,请参阅文件中的存储空间列表

-F 执行伪备份

存储管理器应用程序不是必需的。实际上并没有发生备份,因此不可能从伪备份进行复原。如果确实需要伪备份,请酌情少量使用。伪备份可能在以下情况下适用:

  • 更改数据库日志记录方式
  • 将 RAW 表更改为 STANDARD 表
  • 允许用户在不执行备份的情况下使用新的日志、块或镜像
  • 在您作为管理员判定不需要备份的特殊情况下
-L 指定要在存储空间上执行的备份级别:
  • 0 = 完整备份(缺省值)
  • 1 = 自上次 0 级备份以来的更改
  • 2 = 自上次 1 级备份以来的更改

如果您请求增量备份,而 ON-Bar 发现没有为特定存储空间执行前一级的备份,那么 ON-Bar 会对该存储空间执行前一级的备份。例如,如果请求 1 级备份,而 ON-Bar 未找到 0 级备份,那么它会转而进行 0 级备份。

-l 执行对所有逻辑日志文件的备份。

当前逻辑日志文件未备份。

如果使用的是 Storage Manager,它还会备份 Storage Manager 目录。

-O 覆盖常规备份限制。

当 Blob 空间处于脱机状态时,使用该选项备份逻辑日志。

如果 Blob 空间脱机时发生日志备份,返回码 178 将显示在 ON-Bar 活动日志中。

-p 仅备份物理存储空间,而不备份逻辑日志。

会将警告消息写入活动日志,以列出复原存储空间时所需的最新日志文件的日志唯一标识。如果逻辑日志是连续进行备份的,请使用此选项。如有必要,将启动日志开关,以便可以备份此日志。如果当前的日志比最近一次存储空间的归档检查点日志新,那么不会启动日志开关。

-s 数据库服务器发生故障后,回收磁盘上现有的所有逻辑日志。当服务器处于脱机状态时,可以运行 onbar -l -s 命令。

如果可能,替换损坏的磁盘前请使用该选项。如果使用 onbar -r 在未损坏的磁盘上执行冷复原,ON-Bar 将自动回收逻辑日志。

-w 备份整个系统,其中包含基于单个检查点的所有存储空间和逻辑日志。

备份的时间与备份信息存储在一起。在整个系统的备份中,所有存储空间中的数据是一致的,因此,不再需要复原逻辑日志。如果不保存逻辑日志,您必须 使用 -w 选项。

用途

在备份数据之前,请通过运行 oncheck -cD 命令来确保您的数据是一致的。

要运行 ON-Bar 命令,您必须是用户 root 或用户 gbasedbt,或者是 UNIX 上 bargroup 组的成员。有关更多信息,请参阅 ON-Bar 安全性

当数据库服务器处于联机、停顿或快速恢复方式时,可以备份存储空间和逻辑日志。

存储空间块可以存储在原始磁盘存储空间上、熟文件中。

仅备份联机的存储空间。使用 onstat -d 命令来确定哪些存储空间是联机的。备份期间,如果 ON-Bar 遇到关闭的数据库空间,它将跳过并随后返回一个错误。如果存储空间处于脱机状态,请在存储空间回到联机状态时重新启动备份。

开始备份 后,在 ON-Bar 活动日志和数据库服务器消息日志中监视其进度。

可以单独备份逻辑日志或与存储空间一起备份。一旦逻辑日志填满,请立即对其进行备份,这样就可以复用这些日志,并防止在包含这些日志的磁盘丢失时发生数据丢失。如果日志文件填满,数据库服务器将暂停,直到备份了逻辑日志为止。可以手动备份逻辑日志,也可以运行 onbar -b -C 命令来启动连续逻辑日志备份。逻辑日志备份始终是 0 级的。关闭当前逻辑日志后就可以对其进行备份。

如果执行整个系统的备份与复原,那么无需复原逻辑日志。但是,请在使用整个系统的备份时备份逻辑日志。这些日志备份允许您将数据复原到整个系统备份后的某一时间,从而使数据丢失降到最低限度。

如果要运行连续的逻辑日志备份,然后启动整个系统备份,那么 ON-Bar 进程会尝试保存逻辑日志。由于连续的逻辑日志备份正在运行,因此会返回错误消息以指示逻辑日志备份已在运行,且整个系统备份会返回非零错误代码。在这种情况下,逻辑日志只会备份一次。要避免该错误,请使用 onbar -b -w -p 命令创建物理备份。

要在 ON-Bar 中备份特定表或一组表,请将这些表存储在单独的数据库空间中,然后备份该数据库空间。或者,您也可以使用 archecker 实用程序执行表级别复原。

示例:备份整个系统

以下命令在执行所有联机存储空间和逻辑日志的检查点后执行整个系统的 0 级备份:

onbar -b -w

以下命令执行整个系统的 1 级备份:

onbar -b -w -L 1

示例:备份所有联机存储空间和逻辑日志

以下命令执行所有联机存储空间和已用逻辑日志的标准 0 级备份:

onbar -b

示例:执行增量备份

以下命令执行标准 1 级备份:
onbar -b -L 1

示例:备份指定的存储空间和所有逻辑日志

以下命令对名为 fin_dbspace1fin_dbspace2 的数据库空间以及所有逻辑日志执行 0 级备份:
onbar -b fin_dbspace1 fin_dbspace2

示例:备份文件中指定的存储空间列表

以下名为 listfile3 的样本文件包含要备份的存储空间列表:blobsp2.1my_dbspace1blobsp2.2dbsl.1rootdbs.1dbsl.2

blobsp2.1
# a comment                     ignore this text

       my_dbspace1           # back up this dbspace
; another comment
blobsp2.2                      dbsl.1
rootdbs.1      dbsl.2   ; backing up two spaces
以下命令备份 listfile3 文件中列出的存储空间:
onbar -b -f listfile3

示例:备份逻辑日志

以下命令启动手动逻辑日志备份:

onbar -b -l

以下命令备份当前逻辑日志文件:

onbar -b -l -c

示例:物理备份

以下命令备份所有存储空间,而不备份任何逻辑日志:

onbar -b -p -L 0

会将警告消息写入 ON-Bar 活动日志文件中,说明该日志文件备份未启动。该消息还包含复原存储空间时所需的最新日志文件的日志唯一标识。所需的最新日志文件包含最近一次备份的数据库空间的归档检查点。

示例消息:
2011-12-14 09:30:35 14277  14275 (-43354) WARNING: Logical logs were
     not backed up as part of this operation. Logs through log unique ID 9
     are needed for restoring this backup. Make sure these logs are backed
     up separately.