首页 > 数据库 > > GaussRoach.py-备份命令
python GaussRoach.py
-t backup
--mode cluster
--master-port master-port
--media-type media-type
--media-destination media-destination-path
--meta>metadata-path
[--compression-mode mode]
[--compression-level level]
[--parallel-process level]
[--nbu-policy policy_name]
[--nbu-schedule schedule_name]
[--validation-type validation_type]
[--enable-encrypt password]
python GaussRoach.py
-t backup
--mode cluster
--master-port master-port
--media-type media-type
--media-destination media-destination-path
--meta>metadata-path
--prior-backup-key prior-full-backup-key
[--compression-mode mode]
[--compression-level level]
[--parallel-process level]
[--nbu-policy policy_name]
[--nbu-schedule schedule_name]
[--validation-type validation_type]
[--incremental-type incremental-type]
参数名 | 参数描述 | 取值范围 | 缺省值 | 应用实例 |
|---|---|---|---|---|
-t | Roach接口支持多种功能。指定该参数为backup,表示调用备份功能。 |
| 不涉及 | -t backup |
--mode | Roach工具能在单机和集群两种模式下使用。该参数用于选择数据库模式。 |
| 不涉及 | --mode cluster |
--master-port | Roach主代理进程的执行端口。该参数仅需配置一个无业务冲突的端口即可。 说明: 集群中执行Roach命令的主机被认为是主代理。 | [1024,65535]。 | 不涉及 | --master-port 6812 |
--media-type | 指定本次备份的介质类型。 |
说明: --media-type的参数值错误时(假设指定的是hbu),提示如下信息: 复制 [GAUSS-50004] : The parameter '--media-type' value is incorrect. Value: hbu. | 不涉及 |
|
--media- destination | 指定介质的目的备份路径。该路径必须是绝对路径。 建议将media destination和metadata destination设为不同路径。这样,即使backup key被删除,元数据信息也不会丢失。 mediadata是指集群中存储的业务数据,也就是数据库文件。 | 不涉及 | 不涉及 | --media-destination /home/cam/backup |
--meta valign="top" width="28.57%" headers="mcps1.3.3.2.2.6.1.2 "> 指定本次备份的元数据存储路径。 建议将media destination和metadata destination设为不同路径。这样,即使backup key被删除,元数据信息也不会丢失。 metadata是指Roach在备份恢复操作中收集的配置管理类数据,也叫元数据。例如:集群节点个数、节点配置信息、数据库表个数、表的存储路径、表定义等。 | 不涉及 | 不涉及 | --meta>/home/username | |
--prior-backup-key | 指定本次增量备份的基线备份信息。 说明: 该参数不再作为指定增量备份的基线备份,只能作为打开增量备份开关使用,用法不变。roach基线备份以内核记录的为准。不建议使用该参数。 | 不涉及 | 不涉及 | --prior-backup-key 20170117_041504 |
--compression-mode | 指定压缩备份模式。 | zlib zstd lz4 | zstd | zstd |
--compression-level | 设置压缩备份的级别。 | [1,9] | --compression-mode指定为zlib时,如果不指定--compression-level的值,则默认--compression-level的值为4 | 3 |
--parallel-process | 开启多个并发进程进行备份,指定并发数。 | [1,8] | 不涉及 | 4 |
--nbu-policy | 设置NBU备份策略。 说明:
| 不涉及 | 不涉及 | sample_policy |
--nbu-schedule | 设置NBU备份的schedule。 说明: 如果备份命令参数中设置该参数,roach配置文件中的该参数将不再起作用。如果使用默认schedule,可以不用设置该参数。 | 不涉及 | 不涉及 | sample_schedule |
--validation-type | 该参数打开验证备份集完整性开关并指定验证类型。只支持DISK介质类型。 说明: 只有在备份时打开完整性验证开关的备份集才能进行备份集验证。 | sha256 | 不涉及 | 不涉及 |
--enable-encrypt | 启用对备份集进行加密。 启用加密后,需要输入两次密码,并且两次输入密码必须一致。密码规则如下:
如果全量备份对备份集进行了加密,基于该全量备份进行增量备份的过程中,用户需要交互式输入密码,该密码必须和全量备份时设置的密码一致。 | 不涉及 | 不涉及 | gauss_123 |
--incremental-type | 指定增量备份类型。 说明: 推荐使用此参数进行增量备份。 |
| 不涉及 | --incremental-type all |
cd $ROACH_HOME查看集群状态是否是Normal或Degraded状态。
gs_om -t status集群状态是Normal(即cluster_state : Normal)或者Degraded(即cluster_state : Degraded)时,可以继续执行备份。
vim $ROACH_HOME/conf/roach.ini
- 添加NBU或OBS服务器信息。
备份至NBU时,需要添加以下信息(只支持集群模式):
#roach media param config
NBU_SERVER=sever1
NBU_POLICY=nbupolicy
NBU_SCHEDULE=schedule
备份至OBS时,需要添加以下信息(只支持单机模式):
#roach media param config
OBS_SERVER=obssever
OBS_AK=xxxxxxxx
OBS_SK=xxxxxxxxxx
OBS_BUCKET=xxxxxxxx
OBS_LIMIT_SIZE=100*1024
CLUSTER_ID=xxx

python GaussRoach.py -t backup --mode cluster/single --master-port master_port --media-destination media_destination_path --media-type type --meta>metadata_path
增量备份和全量备份命令的差异点在于,增量备份需要指定--prior-backup-key参数。通过该参数,系统可以获取到上次备份信息,以判断继上次备份之后所更改的数据,用于执行本次的增量备份。
python GaussRoach.py -t backup --mode cluster/single --master-port master_port --media-destination media_destination_path --media-type type --meta>metadata_path --prior-backup-key prior-backup-key

增量备份和全量备份的介质必须相同,也就是说,增量备份至磁盘只能基于磁盘全量备份进行;增量备份至NBU只能基于NBU全量备份进行;增量备份至OBS只能基于OBS全量备份进行。
备份命令支持的全部参数请参见命令格式,参数详情请参见参数说明章节。

备份操作完成后,运行Roach的主机屏幕上显示如下信息。
Parsing the configuration file.
Performing presetup activities...
LFG1000753142 : ##################################################100% 9.531M/s
LFG1000753141 : ##################################################100% 9.528M/s
LFG1000753139 : ##################################################100% 22.092M/s
Successfully backup data, backup key: 20190813_165641, takes time: 00:00:38.
Performing backup completed.

python GaussRoach.py -t backup --mode cluster --master-port 6000 --media-destination /home/userA/backup --media-type Disk --meta>全量备份至NBU。
python GaussRoach.py -t backup--mode cluster --master-port 6000 --media-destination /home/userA/media --media-type NBU --meta>增量备份至磁盘。
python GaussRoach.py -t backup --mode cluster --master-port 6000 --media-destination /home/userA/backup --media-type Disk --meta id="ZH-CN_TOPIC_0136907676__zh-cn_topic_0101198518_zh-cn_topic_0100209763_zh-cn_topic_0085586626_sb4b575e4f0b540d09a856db8a309436c">
相关命令
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69959250/viewspace-3166798/ ,如需转载,请注明出处,否则将追究法律责任。