使用 onbar -v 命令可验证 ON-Bar 实用程序所创建的备份是否完整且可以恢复。
要运行 ON-Bar 命令,您必须是 root 用户或 gbasedbt 用户,或者是 UNIX™
上 bargroup 组的成员。
必须有足够的临时空间可用。有关更多信息,请参阅用于备份验证的临时空间。
•
用途
•
示例:执行备份的时间点验证
•
示例:验证文件中列出的存储空间的备份
•
示例:ON-Bar 活动日志验证消息
•
示例:archecker 消息日志验证消息
验证备份
表 1. onbar -v 命令的选项
选项
描述
-v
验证备份。服务器可以采用任何方式。
如果验证成功,那么可以安全地恢复存储空间。
可以验证整个系统的备份或仅物理的备份。不能验证逻辑
日志。
space
要验证的存储空间的名称。
如果输入多个存储空间名称,那么使用空格来分隔这些名
称。
GBase 8s 备份与恢复指南
南大通用数据技术股份有限公司 - 51 -
选项
描述
-f filename
验证由 filename 提供其路径名的文本文件中列出的存
储空间。
使用该选项以避免每次验证存储空间时都要输入一长串存
储空间。
您可以使用任何有效的 UNIX 路径名和文件名。有关该文
件的格式,请参阅文件中的存储空间列表。
此文件可以在每行列出多个存储空间。
-p
验证仅物理的备份。
-t "time"
指定验证数据库空间的日期和时间。必须以引号括起。
如何输入时间取决于当前的 GLS 语言环境约定。如果设
置了 GL_DATETIME 环境变量,那么必须根据该变量指
定日期和时间。如果未设置 GLS 语言环境,请使用 ANSI
样式的日期格式:YYYY-MM-DD HH:MM:SS。
-w
验证整个系统的备份。
用途
onbar -v 命令运行 archecker 实用程序。 archecker 实用程序验证恢复备份所需的所有页面
是否以正确的格式存在于介质上。成功验证备份后就可以安全恢复了。
当验证备份时,ON-Bar 将摘要消息写入到 bar_act.log 中,它报告验证了哪些存储空间以
及验证是成功的还是失败的。archecker 实用程序将详细的消息写入到 ac_msg.log 中。
GBase 软件支持使用 ac_msg.log 来诊断备份与恢复的问题。
onbar -v 命令仅验证智能大对象空间中智能大对象的范围。使用 oncheck -cS 命令进行完整
的检查。
onbar -v 命令不能验证 Blob 空间中数据行和简单大型对象之间的链接。使用 oncheck -
cD 命令作为代替来验证 Blob 空间中的链接。
示例:执行备份的时间点验证
以下命令验证某个时间点的备份:
GBase 8s 备份与恢复指南
南大通用数据技术股份有限公司 - 52 -
onbar -v -t "2011-12-10 10:20:50"
示例:验证文件中列出的存储空间的备份
以下命令验证文件 bkup1 中列出的已备份的存储空间:
onbar -v -f /usr/backups/bkup1
示例:ON-Bar 活动日志验证消息
以下示例显示 ON-Bar 活动日志中有关验证的消息:
数据库空间 dbs2.2 的 0 级备份已通过验证,如下:
开始 dbs2.2 的 0 级备份验证(存储管理器复制标识:##)
成功完成 0 级备份检验。
rootdb 的 0 级备份验证失败,如下:
开始 rootdbs 的 0 级备份验证(存储管理器复制标识:##)。
错误:无法关闭物理检查:error_message。
示例:archecker 消息日志验证消息
更多详细信息可在 archecker 消息日志中获得,如下:
状态:扫描已通过
状态:控制页检查已通过
状态:开始检查数据库空间 dbs2.2.
状态:正在检查 dbs2.2:TBLSpace
.
.
状态:已验证的表/分段:1
归档验证已通过
用于备份验证的临时空间
验证备份时,必须有 15 到 25 MB 的临时空间可用。
在备份验证期间,对于中等大小的系统(40 到 50 GB),archecker 实用程序需要大约 15
MB 的临时空间,对于大型系统则需要大约 25 MB。这个临时空间存储在文件系统上 由
AC_STORAGE 参数指定的目录中,而不在数据库空间中。临时文件包含关于分区页、块
中的可用页和保留页的备份和复制的位图信息,(以下可选)还可以包含 Blob 空间中的
可用页和调试信息。archecker 实用程序必须具有该临时目录的许可权。
GBase 8s 备份与恢复指南
南大通用数据技术股份有限公司 - 53 -
如果备份验证成功,这些文件将被删除。如果备份验证失败,这些文件将继续保留。将它
们复制到另一个位置,以便GBase 软件支持可以进行查看。
如果数据库服务器只包含数据库空间,请使用以下公式估算 archecker 临时文件使用的临
时空间量(以 KB 为单位):
空间 = (130 KB * number_of_chunks) + (pagesize * number_of_tables) +
(.05 KB * number_of_logs)
对于 GBase 8s,如果您的数据库服务器包含 Blob 空间或智能大对象空间,那么使用以下
公式估计 archecker 临时文件的临时空间大小:
空间 = (130 KB * number_of_chunks) + (pagesize * number_of_tables) +
(.05 KB * number_of_logs) + (pagesize * (num_of_blobpages/252))
number_of_chunks
估计用于数据库服务器的块的最大数目。
pagesize
系统页的大小(以 KB 为单位)。
number_of_tables
估计用于数据库服务器的表的最大数目。
number_of_logs
数据库服务器上的逻辑日志数。
num_of_blobpages
Blob 空间中 Blob 页的数目或智能大对象空间的数目。(如果数据库服务器包含智
能大对象空间,那么使用智能大对象空间的数目替换num_of_blobpages。)
例如,在页面大小为 2 KB 的 50 千兆字节系统上,将需要 12.9 兆字节的临时磁盘空
间。该系统不包含任何 Blob 空间,如以下语句所示:
13,252 KB = (130 KB * 25 块) + (2 KB * 5000 个表) +
(.05 KB * 50 个日志) + (2 KB * 0)
要将 KB 转换为 MB,请将结果除以 1024: