实验二十一 GaussDB物理备份恢复

##本机Disk磁盘备份,创建目录

sql 复制代码
mkdir -p /data/cluster/var/lib/engine/data1/data/disk 
chown -R Ruby.Ruby /data/cluster/var/lib/engine/data1/data/disk 
chown -R Ruby.Ruby /data/cluster/var/lib/engine/data1/data

##创建测试库及表

sql 复制代码
gsql -d postgres -p 8000 -r  
create database test_backup_db;
\c test_backup_db;
create table test(id int,name varchar2(20));
insert into test values(1,'张三');
insert into test values(2,'李四');
insert into test values(3,'王麻子');

##执行脚本命令,对整集群进行物理的全量备份,备份集B1

## --master-port 对应的端口已经要是之前未被占用的

sql 复制代码
python3 $GPHOME/script/GaussRoach.py -t backup --master-port 9800 --media-destination /data/cluster/var/lib/engine/data1/data/disk --media-type Disk --metadata-destination /data/cluster/var/lib/engine/data1/data/disk/metadata_disk --logging --logging-level INFO --reader-thread-count 8 --compression-level 5

##开启集群归档模式

sql 复制代码
python3 $GPHOME/script/GaussRoach.py -t config --archive=true -p

##对数据库进行读写更改

sql 复制代码
gsql -d test_backup_db -p 8000 -r 
insert into test values(4,'赵五');
\q

##对数据库进行增量备份,备份集为B2

sql 复制代码
python3 $GPHOME/script/GaussRoach.py -t backup --master-port 9800 --media-destination /data/cluster/var/lib/engine/data1/data/disk --media-type Disk --metadata-destination /data/cluster/var/lib/engine/data1/data/disk/metadata_disk --logging --logging-level INFO  --reader-thread-count 8 --compression-level 5  --prior-backup-key 20250926_151214

## 对数据库再次进行读写更改

sql 复制代码
gsql -d test_backup_db -p 8000 -r 
insert into test values(5,'周六');

##-对数据库进行增量恢复至备份集B2

sql 复制代码
python3 $GPHOME/script/GaussRoach.py -t restore --clean --master-port 9800 --media-destination /data/cluster/var/lib/engine/data1/data/disk --media-type DISK  --metadata-destination /data/cluster/var/lib/engine/data1/data/disk/metadata_disk --backup-key 20250926_170759

##重启集群

sql 复制代码
python3 $GPHOME/script/GaussRoach.py -t start

##验证恢复

sql 复制代码
gsql -d test_backup_db -p 8000 -r 
select * from test;
\q

##对数据库进行全量恢复至备份集B1

sql 复制代码
python3 $GPHOME/script/GaussRoach.py -t restore --clean --master-port 9800 --media-destination /data/cluster/var/lib/engine/data1/data/disk --media-type Disk --metadata-destination /data/cluster/var/lib/engine/data1/data/disk/metadata_disk --backup-key 20250926_151214

##重启集群

sql 复制代码
python3 $GPHOME/script/GaussRoach.py -t start

##验证恢复

sql 复制代码
gsql -d test_backup_db -p 8000 -r 
select * from test;
相关推荐
DarkAthena6 天前
【GaussDB】会话里出现大量idle in transaction状态的问题排查
gaussdb
Gauss松鼠会8 天前
GaussDB(DWS)性能问题处理套路
服务器·数据库·postgresql·性能优化·gaussdb
Gauss松鼠会8 天前
GaussDB(DWS) SQL性能问题案例集
java·数据库·经验分享·spring boot·后端·sql·gaussdb
Gauss松鼠会9 天前
GaussDB(DWS)数据融合:Oracle增量数据迁移到DWS
java·数据库·算法·oracle·性能优化·gaussdb
DarkAthena11 天前
【GaussDB】 keep聚合SQL 性能优化分析:从 123s 到 18s 的优化之路
gaussdb
DarkAthena12 天前
【GaussDB】排查报错“ERROR: Plpgsql estate is null“
gaussdb
DarkAthena12 天前
【DuckDB】一条 SQL 同时连接 Oracle 和 GaussDB
oracle·gaussdb·duckdb
Gauss松鼠会14 天前
GaussDB(DWS) 日常维护命令
服务器·数据库·postgresql·性能优化·gaussdb·经验总结
Gauss松鼠会14 天前
GaussDB(DWS) GUC参数修改、查看
java·数据库·sql·数据库开发·gaussdb
UtopianCoding14 天前
数据库语法对比详细规则
数据库·mysql·gaussdb