[mapping]
vbr 配置文件有一个 [Mapping] 部分,用于指定备份中包含的所有数据库节点。它还包括每个节点的备份主机和目录。如果正在将对象复制到备用数据库,[Mapping] 部分会将目标数据库节点映射到源数据库备份位置。
如果您编辑现有配置文件,并以当前样式添加一个映射,新部分必须组合所有现有映射的信息。
注意
[CloudStorage] 和 [Mapping] 配置部分相互排斥。如果二者均包含,则备份将失败。与其他配置文件部分不同,[Mapping] 部分不使用命名参数。相反,它使用以下格式的条目:
dbNode = backupHost:backupDir
下表介绍了这三个元素。
- dbNode
- Vertica 识别的数据库节点的名称。此值不是节点的主机名称,而是 Vertica 用于在内部识别节点的名称,其格式通常是:
v_dbname_node000int
要在群集中查找数据库节点名称,请查询 NODES 系统表的
node_name
列。 - backupHost
- 存储该节点的备份的目标主机名称或 IP 地址。
backupHost
名称与dbNode
不同。copycluster
命令使用此值来确定目标数据库节点主机名称。重要
尽管支持备份到 NFS 主机,但此举性能较低,这在与重新同步操作共享的网络中尤其如此。 - backupDir
- 存储备份的备份主机或节点上的目录的完整路径。此目录具有以下要求:
-
运行具有
--task backup
选项的 vbr 时,目录已经存在 -
可由用于运行 vbr 的用户帐户写入。
-
专用于正在备份的数据库。多个数据库不能共享同一个备份目录。
-
此位置的文件系统支持
fcntl lockf
文件锁定。
-
例如:
[Mapping]
v_sec_node0001 = pri_bsrv01:/archive/backup
v_sec_node0002 = pri_bsrv02:/archive/backup
v_sec_node0003 = pri_bsrv03:/archive/backup
映射到 localhost
vbr 不支持将特殊的 localhost 名称作为备份主机。要将数据库节点备份到其自己的磁盘,在配置文件的 [Mapping] 部分中对主机名使用空方括号。
[Mapping]
NodeName = []:/backup/path
映射到相同的数据库
以下示例显示了用于指定要备份的单个节点的 [Mapping] 部分:v_vmart_node0001
。该节点被分配到备份主机 srv01
以及备份目录 /home/dbadmin/backups
。尽管备份的是单节点群集,并且备份主机和数据库节点是同一个系统,但是您可以分开指定它们。
指定备份主机和目录,并使用冒号 (:
) 作为分隔符:
[Mapping]
v_vmart_node0001 = srv01:/home/dbadmin/backups
映射到备用数据库
注意
将对象复制到备用数据库时,需要 vbr 配置文件以包含 [NodeMapping] 部分。此部分会将源节点指向目标数据库节点。要还原备用数据库,请按如下所示添加映射信息:
[Mapping]
targetNode = backupHost:backupDir
例如:
[Mapping]
v_sec_node0001 = pri_bsrv01:/archive/backup
v_sec_node0002 = pri_bsrv02:/archive/backup
v_sec_node0003 = pri_bsrv03:/archive/backup