Roach备份恢复GaussDB DWS

网友投稿 978 2022-05-28

本文档主要是针对Roach备份恢复GaussDB DWS数据库集群到本地磁盘的方式进行了详细的测试记录,包括全量备份和增量备份以及恢复。

主要步骤:

1、测试前准备

2、集群全量备份

3、增量备份

4、删除数据为恢复创造条件

5、集群恢复

6、Check恢复后的数据

详细步骤:

一、测试前准备

以下所有操作都使用omm用户测试完成。

1.1      创建一个测试库testdb1

create database testdb1 template template0 encoding 'UTF8' ;

Roach备份恢复GaussDB DWS

1.2   在testdb1中创建一张测试表并insert 3条数据

创建表

create table table_row(

col_id  integer,

col_name varchar2(30),

col_comment varchar2(200)

)distribute by hash(col_id);

测试数据

insert into table_row values(1001, 'name1001', 'cmm1001');

insert into table_row values(1002, 'name1002', 'cmm1002');

insert into table_row values(1003, 'name1003', 'cmm1003');

1.3      在本地磁盘创建一个备份目录

cd /srv/BigData/LocalBackup/

mkdir media

二、集群全量备份

1.1      登录主机

以操作系统用户omm登录Gauss集群任意一台主机,此主机作为Roach主代理

执行source ${BIGDATA_HOME}/mppdb/.mppdbgs_profile命令启动环境变量。

1.2      进入Roach脚本目录

进入$GPHOME/script/目录

cd $GPHOME/script

1.3      开启归档模式

执行以下命令开启集群归档模式

python GaussRoach.py -t config --archive=true -p

1.4     执行备份

在作为Roach主代理的主机上执行以下命令:

python GaussRoach.py -t backup --master-port --media-destination --media-type Disk --metadata-destination

举例:

GaussRoach.py -t backup --master-port 6000 --media-destination /srv/BigData/LocalBackup/media --media-type Disk --metadata-destination /srv/BigData/LocalBackup/media/metadata --parallel-process 3 --compression-level 6

参数说明:

--media-destination:该参数用于指定本次备份的数据存储路径

--media-type Disk:该参数用于指定本次备份的元数据存储路径

--parallel-process:备份任务并发线程,建议值为每个数据节点(主DN个数+1)

--compression-level:备份压缩级别,0~9,值越大,压缩级别越高,0不压缩,经验证,压缩级别越高备份速率越低,推荐值:6

查看备份目录的变化:(此处见附件)

1.5      备份结束,关闭集群归档模式。

python GaussRoach.py -t config --archive=false –p

增量备份

执行以下步骤增量备份集群到磁盘:

1.1      登录到Gauss集群主机

以操作系统用户omm登录Gauss集群的任意一台主机,此主机作为Roach的主代理

执行source ${BIGDATA_HOME}/mppdb/.mppdbgs_profile命令启动环境变量。

1.2      确定--prior-backup-key

确定—prior-backup-key,每次备份成功后都会生成一个以时间戳命名的备份文件夹,该时间戳(文件夹名称)就是backupkey

举例:上次备份目录下的文件名(/srv/BigData/LocalBackup/media/)的文件名

1.3      进入Roach目录

进入Roach脚本所在目录$GPHOME/script/

cd $GPHOME/script

1.4      开启集群归档模式。

python GaussRoach.py -t config --archive=true –p

1.5      增量备份

在作为Roach主代理的主机上执行以下命令:

python GaussRoach.py -t backup --master-port --media-destination --media-type --metadata-destination --priorbackup-key

举例:

GaussRoach.py -t backup --master-port 6000 --media-destination /srv/BigData/LocalBackup/media --media-type Disk --metadata-destination /srv/BigData/LocalBackup/media/metadata --parallel-process 3 --compression-level 6 --prior-backup-key 20200629_161652

1.6     备份结束,关闭集群归档模式。

python GaussRoach.py -t config --archive=false –p

四、删除testdb1,为恢复做准备

gsql –d postgres –p 25308 –ar

drop database testdb1;

五、集群恢复

1.1      登录Gauss集群任意一台主机

登录Gauss集群任意一台主机,使用集群用户omm登录集群任意一台主机(作为Roach代理主机),启动环境变量

source ${BIGDATA_HOME}/mppdb/.mppdbgs_profile

1.2      进入Roach目标

进入“$GPHOME/script”目录,(在主代理主机)执行集群恢复操作, 并在恢复之前清理集群。(注:虽然我指定的是最近一次的backup-key,实际恢复的时候是先恢复全量,然后,逐步恢复每个增量)

python $GPHOME/script/GaussRoach.py -t restore --clean --media-destination   /srv/BigData/LocalBackup/media --metadata-destination   /srv/BigData/LocalBackup/media/metadata    --master-port 6000  --media-type   Disk --backup-key 20200629_171044

1.3      启动集群。

python GaussRoach.py -t start

六、查看恢复后的集群

可以看到集群已恢复,删除的testdb1库已经恢复回来。

附件: Roach测试_博文.docx 1.67MB 下载次数:4次

DWS EI企业智能 云备份

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:轻松学习字符串
下一篇:《计算机视觉算法:基于OpenCV的计算机应用开发》 —2.10 习题
相关文章