lightdb22.4-分布式物理备份
Posted 紫无之紫
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了lightdb22.4-分布式物理备份相关的知识,希望对你有一定的参考价值。
lightdb22.4 分布式物理备份
lightdb 从lightdb22.4 开始支持分布式物理备份, 提供lt_distributed_probackup.py脚本对分布式集群进行一键备份,不再需要对每个节点执行lt_probackup命令,但不保证某一次备份各节点间数据的一致性(不恢复到最新,只恢复到某一次备份)。
简介
lt_distributed_probackup.py 通过指定cn节点信息,可以实现对整个分布式集群的备份,在原集群异常时对原集群恢复直接恢复即可,恢复到新集群需要指定新的cn和dn信息。
备份恢复流程
此流程基于持续归档,归档模式备份
环境信息
backup server: 192.168.247.126;
backup dir: /home/lightdb/backup
coordinator info: 192.168.247.127:54332
coordinator data dir: /home/lightdb/data
datanode1 info: 192.168.247.128:54332
datanode2 info: 192.168.247.129:54332
new cluster(cn;dn1;dn2): 192.168.247.130;192.168.247.131;192.168.247.132
流程
-
需要配置免密,根据使用方式不同可能需要配置对本机的免密,本机ip 和127.0.0.1
-
初始化备份目录
lt_distributed_probackup.py init -B /home/lightdb/backup
-
添加实例
lt_distributed_probackup.py add-instance -B /home/lightdb/backup -D /home/lightdb/data --instance cn -h192.168.247.128 -p5432
-
配置持续归档
# cn archive_command="/home/lightdb/lightdb-x/13.8-22.4/bin/lt_probackup archive-push -B /home/lightdb/backup --instance=cn --wal-file-name=%f --remote-host=192.168.247.126" # dn1 --instance 的值在上述添加实例时获取, 或者自己根据规则计算,具体看下面的note archive_command="/home/lightdb/lightdb-x/13.8-22.4/bin/lt_probackup archive-push -B /home/lightdb/backup --instance=cn_dn_1 --wal-file-name=%f --remote-host=192.168.247.126"
-
备份分布式集群
lt_distributed_probackup.py backup -B /home/lightdb/backup -D /home/lightdb/data --instance cn -h192.168.247.128 -p5432 -b full --parallel-num=1
-
原集群上恢复
# 原集群 lt_distributed_probackup.py restore -B /home/lightdb/backup --instance cn --parallel-num=1 # 新集群 list 顺序为cn;dn1;dn2 , dn1 为node_id 小的dn节点(pg_dist_node) lt_distributed_probackup.py restore -B /home/lightdb/backup --instance cn --parallel-num=1 --remote-host='192.168.247.130;192.168.247.131;192.168.247.132'
-
checkdb 检测数据库物理文件准确性
lt_distributed_probackup.py checkdb -B /home/lightdb/backup --instance cn lt_distributed_probackup.py checkdb -h10.19.70.50 -p54332
-
设置config
lt_distributed_probackup.py set-config -B /home/lightdb/backup --instance cn --archive-timeout=6min
-
查看配置
lt_distributed_probackup.py show-config -B /home/lightdb/backup --instance cn
-
检测备份文件
lt_distributed_probackup.py validate -B /home/lightdb/backup --instance cn
-
查看备份
lt_distributed_probackup.py show -B /home/lightdb/backup --instance cn
-
删除备份文件
lt_distributed_probackup.py delete -B /home/lightdb/backup --instance cn --delete-expired --retention-redundancy=1
-
删除实例
lt_distributed_probackup.py del-instance -B /home/lightdb/backup --instance cn
-
merge, set-backup 只对具体备份文件起效,与lt_probackup一致
lt_distributed_probackup.py merge -B /home/lightdb/backup --instance cn -i RMICH6 -j 2 --progress --no-validate --no-sync lt_distributed_probackup.py set-backup -B /home/lightdb/backup --instance cn_dn_2 -i RMI6YR --note='cn_dn_2'
note
- dn节点的instance name 根据cn 指定的instance name 生成,格式如下:cn_name_db_id, id 为pg_dist_node中的node_id.
以上是关于lightdb22.4-分布式物理备份的主要内容,如果未能解决你的问题,请参考以下文章