返回首页

gbase数据、南大通用产品文档:GBase8sarchecker 实用程序命令的语法

更新日期:2024年09月11日

archecker 实用程序为从归档中恢复数据提供了一个命令行界面。要使用 archecker,您必
须指定一个配置文件和一个模式命令文件。


元素
描述
-b
提供使用 ON-Bar 创建的备份的直接 XBSA 访问。
-d
删除先前的 archecker 恢复文件,但 archecker 消息日志
除外。有关更多信息,请参阅删除恢复文件的时间。
-D
删除先前的 archecker 恢复文件,但 archecker 消息日志
除外,然后退出。
-D 选项可以和 -X 选项一起使用,以删除先前的恢复文件以
及 sysutils 数据库中的任何表级别恢复工作表。 有关更多信
息,请参阅删除恢复文件的时间。
-f cmdfile
指定 archecker 使用由 cmdfile 指定的命令文件。 该选项
将覆盖 AC_SCHEMA 配置参数的值。 有关更多信息,请参阅模式
命令文件。
-i
手动初始化系统。
-lphys,stage,apply
指定逻辑恢复的级别:
phys
启动系统的逻辑恢复,但在物理恢复完成后停止。备份的逻辑日
志必须可用。

GBase 8s 备份与恢复指南
南大通用数据技术股份有限公司 - 197 -

元素
描述
stage
物理恢复完成后,从存储管理器抽取逻辑日志并将其登台到对应
的表中,再启动 stager。
apply
启动 applier。applier 提取存储在登台表中的事务,将其转换
为 SQL,并重放操作。
如果未列出 -l 选项,那么缺省的逻辑恢复级别为 -
lphys,stage,apply。您可以指定逻辑恢复级别的任意组合,以逗
号分隔。 -l 和级别之间不允许有空格。
有关更多信息,请参阅手动控制逻辑恢复。
-s
将状态消息打印到屏幕。
-t
指定 ontape 作为备份实用程序。
-v
指定详细方式。
-X
指定表级别恢复。
-V
显示 GBase 8s 版本信息。
-version
显示有关 GBase 8s 的构建操作系统、构建版本号和构建日期
的附加版本信息。
当您使用 ON-Bar 时,可以使用 ON-Bar 命令来访问 archecker 信息,以验证备份。 有关
此命令的语法的信息,请参阅 onbar -v 语法:验证备份。

手动控制逻辑恢复
您可以使用 -l 命令行选项手动控制 stager 和 applier。
以下示例显示了如何执行逻辑恢复。 在所有示例中,模式命令文件名都是 cmdfile。
下面是一个典型的用法示例:
archecker -bvs -f cmdfile
该命令等同于以下命令:

GBase 8s 备份与恢复指南
南大通用数据技术股份有限公司 - 198 -

archecker -bvs -f cmdfile -lphys,stage,apply
物理恢复完成后,archecker 实用程序启动 stager。stager 启动后,applier 自动启动。
在以下示例中,-lphys 选项执行单纯的物理恢复:
archecker -bvs -f cmdfile -lphys
在以下示例中,-lstage 选项启动 archecker stager。stager 从存储管理器中抽取逻辑日志记
录,并将适用的记录保存到表中。
archecker -bvs -f cmdfile -lstage
stager 只应在物理恢复完成后才启动。
在以下示例中,-lapply 选项启动了 archecker applier。它在 acu_control 表中寻找要恢复的
事务。 applier 应该在 stager 启动后才启动。
archecker -bvs -f cmdfile -lapply

使用多个存储管理器执行恢复
如果您使用多个存储管理器,您可以通过在每个节点上配置 archecker,用 archecker 执行
表级别恢复。
要执行涉及多个存储管理器的表级别恢复:
1.
在每个节点上创建一个 archecker 配置文件。
2.
在每个节点上创建一个模式命令文件。
3.
通过在单个节点上执行 archecker -DX 命令来除去旧的恢复。
4.
通过在每个节点上执行 archecker -bX -lphys 命令来启动物理恢复。
限制: 不要使用 -d 选项。
5.
物理恢复完成后,通过在包含逻辑日志记录的每个节点上执行 archecker -bX -
lstage 命令来启动逻辑恢复。
限制: 不要使用 -d 选项。
6. 启动所有 stager 之后,通过在单个节点上执行 archecker -bX -lapply 命令来完成
恢复。

执行并行恢复
如果在分开的数据库空间中驻留了一张分段表,您可以通过为每个数据库空间使用不同的
模式命令文件执行多个 archecker 命令来并行地执行物理的表级别恢复。
在 0 级归档期间,不能有任何会更改表的模式的打开事务。正在恢复的表或表的分段必
须存在于 0 级归档中。 在逻辑恢复期间不能创建或添加该表或分段。 逻辑恢复期间创
建的表或添加的分段将被忽略。

GBase 8s 备份与恢复指南
南大通用数据技术股份有限公司 - 199 -

因为拆离的分段不再是原始表的一部分,applier 从该点起不会处理拆离的分段的日志记录
或该分段的任何其他日志记录。archecker 消息日志文件中的消息将指示出现了拆离。
在本示例中,该表跨越三个数据库空间分段。 相应的模式命令文件名为 cmdfile1、
cmdfile2 和 cmdfile3。以下命令删除先前的恢复,然后在每个数据库空间上并行地执行物
理恢复。

archecker -DX

archecker -bvs -f cmdfile1 -lphys

archecker -bvs -f cmdfile2 -lphys

archecker -bvs -f cmdfile3 -lphys
不能并行地执行逻辑恢复。

使用大对象恢复表
ON-Bar 支持对智能大对象和二进制大对象进行表级别恢复。

智能大对象
表级别恢复还支持仅针对物理恢复的智能大对象(从 0 级归档恢复)。
必须用 CREATE TABLE 语句的 PUT 子名来指定要恢复智能大对象列的存储位
置。恢复的智能大对象用 create-time 标志 LO_NOLOG 和
LO_NOKEEP_LASTACCESS_TIME 创建。如果在智能大对象列的对象表中指定
这些标志,那么它们将覆盖 LOG 和 KEEP ACCESS TIME 列属性。

二进制大对象
表级别恢复支持恢复表空间二进制大对象,但不支持 Blob 空间二进制大对象。
如果尝试恢复 Blob 空间二进制大对象,那么该值设置为 NULL 并发出警告。

删除恢复文件的时间
如果重复运行相同的 archecker 表级别恢复,那么必须清除先前运行中的
archecker 表级别恢复工作文件和表。这些工作表是指 sysutils 数据库中在 archecker
表级别恢复期间创建的 acu_ 表。在 archecker 表级别恢复完成之后,将保留这些
archecker 表级别恢复工作文件和表,以供诊断问题之需。
通过显式运行命令 archecker -DX 或在运行下一条 archecker 表级别恢复命令时使用 -d
选项,可以除去这些工作文件和表。-d 选项表示在新的恢复开始之前除去前一次
archecker 表级别恢复运行中的所有文件和表。

ontape 示例:archecker -tdvs -fschema_command_file

onbar 示例:archecker -bdvs -fschema_command_file

GBase 8s 备份与恢复指南
南大通用数据技术股份有限公司 - 200 -

大多数客户端函数的输入和输出参数是客户端应用程序的输出参数。
但是,接受输入/输出参数的客户端函数会在内部初始化这些参数,然后将其发送数据库服
务器,并请求执行客户端函数。因此,您需要将这些参数作为输入/输出参数传递给驱动程
序。

dbspace 列表中移除 dbspace(SQL 管理
API)
随同 admin() 或 task() 函数,使用 autolocate database remove 参数来从可用
dbspace 列表移除 dbspace, 指定的数据库在这些可用 dbspace 内可自动地定位和分片
表。
语法

元素
描述
关键考虑
database_name
数据库的名称

dbspace
要从 dbspace 名称列表移除的 dbspace 的名称,数据
库服务器在这些 dbspace 中可自动地创建分片。
该 dbspace 必
须存在。

用法
AUTOLOCATE 配置参数或会话环境变量必须设置为正整数。
可用 dbspace 的列表存储在 sysautolocate 系统目录表中。
示例

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 697 -
下列命令从 customer 的可用 dbspace 列表移除 dbspace1。
EXECUTE FUNCTION task("autolocate database remove", "customer", "dbspace1");