GBase 8a
备份恢复
文章
南大通用GBase 8a备份恢复
王改变
发表于2025-05-17 09:07:39461次浏览0个评论
备份的场景
在生产环境中,为了保证数据的安全性,防止误操作删库表以及其他不定因素导致的数据丢失,定期进行备份是不可或缺的一项功能,为了最大化提升备份的性能,gbase8a采用了节点本地备份的方式,即每个节点将自己节点上存储的数据备份到本地磁盘的某个位置,该磁盘位置也可以是用户挂载的磁盘。
备份工具介绍
gcrcman
GBase 8a MPP Cluster 提供专用的备份恢复工具(gcrcman),用户使用它可以方便地对整个集群中的数据进行备份和恢复。集群的备份、恢复工具随集群的安装自动安装,该工具被安装在安装目录$GCLUSTER_BASE/server/bin 下。一次全量备份开启一个新的周期。一次增量备份则续写最后一个备份周期,使其增加一个备份点。
支持的备份类型有:集群备份、库级备份、表级备份、批量表备份
支持的恢复类型有:集群恢复、库级恢复、表级恢复、批量表恢复
支持的备份对象:
数据库对象 | 集群级 | 库级 | 表级 |
表元数据 | 支持 | 支持 | 支持 |
表数据 | 支持 | 支持 | 支持 |
表索引 | 支持 | 支持 | 支持 |
存储过程 | 支持 | 不支持 | 不支持 |
视图 | 支持 | 支持 | 不支持 |
UDF | 不支持 | 不支持 | 不支持 |
镜像表 | 不支持 | 不支持 | 不支持 |
表空间 | 支持 | 支持 | 不支持 |
备份步骤
1.检查集群状态,保障所有节点状态正常
gcadmin显示所有服务状态为OPEN,datastate为0
2.配置各节点gbase用户免密
若未配置免密,则执行备份命令时需要指定操作系统密码 -P参数,并保证各节点密码一致
3.在所有节点创建备份目录
可以是本地目录,也可以在挂载远程目录3
4.执行备份命令
表级备份恢复
1.在集群所有节点状态备份目录
2.查看原表数据
3.执行备份命令
4.删除原表
5.执行恢复命令
6.执行refresh table
批量表级备份
1.将所有需要备份的表写入文件table.list中,格式为db.table
2.执行批量备份
备份恢复需注意如下问题:
- 执行 gcrcman.py 命令时,必须是安装数据库时指定的 dbauser。
- 需要在 coordinator 节点上执行备份恢复操作,执行备份恢复操作时集群各节点网络连接正常。
- 执行 gcrcman.py 命令,需要确定操作系统已安装 pexpect 包。默认安装包gcinstall下有pexpect.py,将该文件复制到所有管理节点的$GCLUSTER_BASE/server/bin 下即可
- 在执行备份恢复的过程中,集群的各个节点上,必须都存在 gcrcman.py 中参数 path 指定的路径,集群安装用户 dbauser 用户对该路径具备读写操作权限,且在执行过程中该目录一直存在。
- 不要将$GCLUSTER_BASE、$GBASE_BASE、$GCWARE_BASE 这三个目录及其子目录设置为 path 的路径。
- 执行备份恢复操作时,恢复时需要和备份时集群的拓扑结构相同,包括管理节点、数据节点、数据的 distribution 信息等。
- 恢复时如果不指定周期点,则默认恢复到最新的周期
评论
登录后才可以发表评论
热门帖子
- 12023-05-09浏览数:19412
- 22023-09-25浏览数:12517
- 32020-05-11浏览数:12319
- 42019-04-26浏览数:11751
- 52023-07-04浏览数:10996