当前位置:   article > 正文

国产数据库备份恢复(TiDB\达梦\OceanBase\openGauss\GaussDB\GBASE)——筑梦之路_opengauss oceanbase

opengauss oceanbase

TiDB

BR 简介 | PingCAP Docs

备份原理介绍: 

BR 设计原理 | PingCAP Docs 

BR 设计原理

BR 将备份或恢复操作命令下发到各个 TiKV 节点。TiKV 收到命令后执行相应的备份或恢复操作。

在一次备份或恢复中,各个 TiKV 节点都会有一个对应的备份路径,TiKV 备份时产生的备份文件将会保存在该路径下,恢复时也会从该路径读取相应的备份文件。

备份示例:

使用 BR 备份集群 | PingCAP Docs 

  1. # 备份 TiDB 集群快照
  2. br backup full \
  3. --pd "${PDIP}:2379" \
  4. --backupts '2022-01-30 07:42:23' \
  5. --storage "s3://backup-data/2022-01-30/" \
  6. --ratelimit 128 \
  7. --log-file backupfull.log
  8. # 备份 TiDB 集群的指定库表的数据
  9. br backup table \
  10. --pd "${PDIP}:2379" \
  11. --db test \
  12. --table usertable \
  13. --storage "s3://backup-data/table-db-usertable/2022-01-30/" \
  14. --ratelimit 128 \
  15. --log-file backuptable.log
  16. # 备份 TiDB 集群增量数据
  17. LAST_BACKUP_TS=`br validate decode --field="end-version" -s s3://backup-data/2022-01-30/ | tail -n1`
  18. br backup full\
  19. --pd ${PDIP}:2379 \
  20. --ratelimit 128 \
  21. --storage "s3://backup-data/2022-01-30/incr" \
  22. --lastbackupts ${LAST_BACKUP_TS}

 恢复示例:

  1. # 恢复单个数据库的数据
  2. br restore db \
  3. --pd "${PDIP}:2379" \
  4. --db "test" \
  5. --ratelimit 128 \
  6. --storage "s3://backup-data/db-test/2022-01-30/" \
  7. --log-file restore_db.log
  8. # 恢复单张表的数据
  9. br restore table \
  10. --pd "${PDIP}:2379" \
  11. --db "test" \
  12. --table "usertable" \
  13. --ratelimit 128 \
  14. --storage "s3://backup-data/table-db-usertable/2022-01-30/" \
  15. --log-file restore_table.log
  16. # 恢复增量备份数据
  17. br restore full \
  18. --pd "${PDIP}:2379" \
  19. --storage "s3://backup-data/2022-01-30/incr" \
  20. --ratelimit 128 \
  21. --log-file restorefull.log

 备份校验、跟踪和问题排查

  1. # 校验备份数据
  2. br debug checksum \
  3. --storage 's3://backup-data/${prefix}' \
  4. --s3.endpoint '${S3-endpoint-URL}' \
  5. --log-file checksum.log

达梦数据库

备份还原简介 | 达梦技术文档 

原理介绍:

备份还原原理 | 达梦技术文档

任何一个对DM数据库的操作,归根结底都是对某个数据文件页的读写操作。物理备份就是把这些数据文件中的有效数据页备份起来,在出现故障时,用于恢复数据。DM的物理备份一般包括数据备份和日志备份两部分,数据备份是拷贝数据页内容,日志备份则是拷贝备份过程中产生的REDO日志。

备份示例:

备份还原实战 | 达梦技术文档 

  1. # 完全备份
  2. SQL>BACKUP DATABASE FULL BACKUPSET '/home/dm_bak/db_full_bak_01';
  3. # 增量备份
  4. SQL>BACKUP DATABASE INCREMENT WITH BACKUPDIR '/home/dm_bak' BACKUPSET '/home/dm_bak/db_increment_bak_02';
  5. # 表空间备份
  6. SQL>BACKUP TABLESPACE MAIN BACKUPSET 'ts_bak_01';
  7. # 表备份
  8. SQL>BACKUP TABLE TAB_01 BACKUPSET '/home/dm_bak/tab_bak_01';
  9. # 归档备份
  10. SQL>BACKUP ARCHIVE LOG ALL BACKUPSET 'arch_bak_01';

 恢复示例:

备份还原实战 | 达梦技术文档

  1. # 数据库恢复
  2. RMAN> RESTORE DATABASE '/opt/dmdbms/data/DAMENG_FOR_RESTORE/dm.ini' FROM BACKUPSET '/home/dm_bak/db_full_bak_for_time_lsn';
  3. RMAN>RECOVER DATABASE '/opt/dmdbms/data/DAMENG_FOR_RESTORE/dm.ini' WITH ARCHIVEDIR'/home/dm_arch/arch' UNTIL TIME'2018-11-16 10:56:40';
  4. # 表空间还原和恢复
  5. RMAN>RESTORE DATABASE '/opt/dmdbms/data/DAMENG_FOR_RESTORE/dm.ini' TABLESPACE MAIN FROM BACKUPSET '/home/dm_bak/ts_full_bak_for_restore';
  6. RMAN>RECOVER DATABASE '<ini_path>' TABLESPACE <表空间名> [WITH ARCHIVEDIR '归档日志目录'{,'归档日志目录'}][USE DB_MAGIC <db_magic>];
  7. # 还原表结构
  8. https://eco.dameng.com/document/dm/zh-cn/ops/physical-backup-restore.html
  9. RESTORE TABLE STRUCT FROM BACKUPSET '/home/dm_bak/tab_bak_for_res_01';
  10. # 还原表数据
  11. RESTORE TABLE WITHOUT INDEX FROM BACKUPSET '/home/dm_bak/tab_bak_for_res_01';
  12. # 备份集校验与删除
  13. SQL>BACKUP DATABASE FULL BACKUPSET '/home/dm_bak/db_bak_for_check';
  14. SQL>SELECT SF_BAKSET_CHECK('DISK','/home/dm_bak/db_bak_for_check');

 OceanBase数据库

原理介绍:

https://www.oceanbase.com/docs/enterprise-oceanbase-database-cn-10000000000355061

OceanBase 数据库物理备份的架构如下图所示

备份示例:

https://www.oceanbase.com/docs/enterprise-oceanbase-database-cn-10000000000357859 

  1. # 发起全量备份
  2. obclient> ALTER SYSTEM BACKUP DATABASE;
  3. # 发起增量备份
  4. obclient> ALTER SYSTEM BACKUP INCREMENTAL DATABASE;

 恢复示例:

https://www.oceanbase.com/docs/enterprise-oceanbase-database-cn-10000000000355919

  1. # 全量恢复
  2. obclient> ALTER SYSTEM RESTORE <dest_tenant_name> FROM <source_tenant_name> at 'uri' UNTIL 'timestamp' WITH 'restore_option';
  3. # 表级别恢复
  4. obclient> ALTER SYSTEM RESTORE <table_name_list> FOR <dest_tenant_name> FROM <source_tenant_name> AT 'uri' UNTIL 'timestamp' WITH 'restore_option' ;
  5. obclient> ALTER SYSTEM RESTORE `crm`.`sales`, `crm`.`products`, `hr`.`employees` FOR new_tenant1 FROM tenant1 AT 'oss://antsys-oceanbasebackup/backup_rd/?host=cn-hangzhou-alipay-b.oss-cdn.aliyun-inc.com&access_id=xxx&access_key=xxx' UNTIL '2021-02-28 08:59:45' WITH 'backup_cluster_name=ob20daily.backup&backup_cluster_id=1&pool_list=restore_pool';
  6. # 查看正在备份的任务
  7. obclient> SELECT * FROM oceanbase.CDB_OB_BACKUP_PROGRESS;
  8. # 查看备份任务的历史
  9. obclient> SELECT * FROM oceanbase.CDB_OB_BACKUP_SET_FILES;

 

 openGauss数据库

备份与恢复 | openGauss

openGauss部署成功后,在数据库运行的过程中,会遇到各种问题及异常状态。openGauss提供了gs_basebackup工具做基础的物理备份。gs_basebackup的实现目标是对服务器数据库文件的二进制进行拷贝,其实现原理使用了复制协议。远程执行gs_basebackup时,需要使用系统管理员账户。gs_basebackup当前支持热备份模式和压缩格式备份。

备份流程

初始化备份目录。在指定的目录下创建backups/和wal/子目录,分别用于存放备份文件和WAL文件。

  1. gs_probackup init -B backup_dir
  2. 添加一个新的备份实例。gs_probackup可以在同一个备份目录下存放多个数据库实例的备份
  3. gs_probackup add-instance -B backup_dir -D data_dir --instance instance_name
  4. 创建指定实例的备份。在进行增量备份之前,必须至少创建一次全量备份。
  5. gs_probackup backup -B backup_dir --instance instance_name -b backup_mode
  6. 逻辑备份
  7. gs_dump -U omm -W Bigdata@123 -f backup/MPPDB_backup.tar -p 37300 postgres -F t
  8. 恢复示例:
  9. # 从指定实例的备份中恢复数据
  10. gs_probackup restore -B backup_dir --instance instance_name -D pgdata-path -i backup_id
  11. # 逻辑恢复
  12. gs_restore backup/MPPDB_backup.dmp -p 15400 -d postgres -e -c -s -n PUBLIC -t table1

 GaussDB数据库

GaussDB T 1.0.2产品手册、GaussDB T 1.0.2 开发指南(单机)

  1. 备份
  2. 逻辑导出
  3. 导出表:
  4. EXP TABLES=tab1,tab2 FILE=file1.dmp
  5. 导出用户:
  6. EXP USERS=TEST FLE=file1.dmp
  7. 恢复
  8. 逻辑导入
  9. IMP TABLES=tab1,tab2 FILE=file.dmp
  10. IMP USERS=TEST FILE=file.dmp

GBASE数据库

天津南大通用数据技术股份有限公司_GBASE-致力于成为用户最信赖的数据库产品供应商 

GBase+8s+V8.8+备份与恢复指南.pdf

天津南大通用数据技术股份有限公司_GBASE-致力于成为用户最信赖的数据库产品供应商 

 

 

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/610394
推荐阅读
相关标签
  

闽ICP备14008679号