GBase 8a
备份恢复
文章

GBase8a 在线备份工具

发表于2025-06-23 09:10:09213次浏览1个评论

gcbr.py
说明:
(1) gcbr.py的使用环境需支持python,8a集群安装包为python2环境,gcbr.py为python2环境;8a集群为python3环境,gcbr.py为python3环境。
(2) gcbr.py的备份均为单副本备份,即只备份一个副本分片数据,不备份主分片和多于一份的副本分片数据。(gcrcman的备份为主副分片全部备份)。
(3) 工具路径:$GCLUSTER_BASE/server/bin/gcbr.py

1.备份语法
使用安装集群的DBA账户登录集群coordinator节点进行操作
> cd $GCLUSTER_BASE/server/bin/
> 库级全量备份
> python gcbr.py -d/backup_dir -P dba_password -e "backup database vc_name.databse_name level 0"
> 库级增量备份 
> python gcbr.py -d/backup_dir -P dba_password -e "backup database vc_name.databse_name level 1"

2.远程备份语法
备份到远端对象存储或者HDFS。
备份到HDFS系统,支持HDFS集群的kerberos认证和简单认证。
> cd $GCLUSTER_BASE/server/bin/
> 备份到S3对象存储
> python gcbr.py -P dba_password -e "backup database vc_name.databse_name level 0" --remote='s3vs://AWSAccessKeyId:AWSSecretKey@8abucket.s3-aws-region.amazonaws.com/region/key'
> 备份到HDFS(kerberos 认证模式)
> python gcbr.py -P dba_password -e "backup database vc_name.databse_name level 0" --remote='hdp://gbase@192.168.100.1:50070/gbasedata/&gbase_hdfs_principal=hdfs/gbase@10.10.10.1&gbase_hdfs_keytab=/home/gbase/hdfs.keytab'
> 备份到HDFS(简单认证模式)
> python gcbr.py -P dba_password -e "backup database vc_name.databse_name level 0" --remote='hdp://gbase@192.168.100.1:50070/gbasedata/
说明:
备份中途因某张表数据读写错误导致备份失败退出,已备份的数据仍然会留存,需用户手动处理(可使用清除无效备份命令进行清除)。

3.恢复语法
使用安装集群的DBA账户登录集群coordinator节点进行操作
> cd $GCLUSTER_BASE/server/bin/
> 库级全量恢复
> python gcbr.py -P dba_password -e "recover database vc_name.databse_name" --remote='s3vs://AWSAccessKeyId:AWSSecretKey@8abucket.s3-aws-region.amazonaws.com/region/key'

4.查询备份语法
使用安装集群的DBA账户登录集群coordinator节点进行操作
> cd $GCLUSTER_BASE/server/bin/
> python gcbr.py -P dba_password -e "show backup"  --remote='s3vs://AWSAccessKeyId:AWSSecretKey@8abucket.s3-aws-region.amazonaws.com/region/key'

5.删除远端备份语法
使用安装集群的DBA账户登录集群coordinator节点进行操作
> cd $GCLUSTER_BASE/server/bin/
> python gcbr.py -P dba_password -e "delete 0"  --remote='s3vs://AWSAccessKeyId:AWSSecretKey@8abucket.s3-aws-region.amazonaws.com/region/key'
> python gcbr.py -P dba_password -e "delete last"  --remote='s3vs://AWSAccessKeyId:AWSSecretKey@8abucket.s3-aws-region.amazonaws.com/region/key'
说明:
与gcrcman一样,删除备份不能删空,至少留有一个备份周期的数据。

6.清除无效备份语法
使用安装集群的DBA账户登录集群coordinator节点进行操作
> cd $GCLUSTER_BASE/server/bin/
> python gcbr.py -P dba_password -e "cleanup"  --remote='s3vs://AWSAccessKeyId:AWSSecretKey@8abucket.s3-aws-region.amazonaws.com/region/key'

评论

登录后才可以发表评论
用户头像
levvel发表于 6个月前
感谢分享