GaussDB Roach邏輯備份恢復(fù)
1164
2025-03-31
本文檔主要是針對Roach備份恢復(fù)GaussDB DWS數(shù)據(jù)庫集群到本地磁盤的方式進(jìn)行了詳細(xì)的測試記錄,包括全量備份和增量備份以及恢復(fù)。
主要步驟:
1、測試前準(zhǔn)備
2、集群全量備份
3、增量備份
4、刪除數(shù)據(jù)為恢復(fù)創(chuàng)造條件
5、集群恢復(fù)
6、Check恢復(fù)后的數(shù)據(jù)
詳細(xì)步驟:
一、測試前準(zhǔn)備
以下所有操作都使用omm用戶測試完成。
1.1????? 創(chuàng)建一個測試庫testdb1
create database testdb1 template template0 encoding 'UTF8' ;
1.2?? 在testdb1中創(chuàng)建一張測試表并insert 3條數(shù)據(jù)
創(chuàng)建表
create table table_row(
col_id? integer,
col_name varchar2(30),
col_comment varchar2(200)
)distribute by hash(col_id);
測試數(shù)據(jù)
insert into table_row values(1001, 'name1001', 'cmm1001');
insert into table_row values(1002, 'name1002', 'cmm1002');
insert into table_row values(1003, 'name1003', 'cmm1003');
1.3????? 在本地磁盤創(chuàng)建一個備份目錄
cd /srv/BigData/LocalBackup/
mkdir media
二、集群全量備份
1.1????? 登錄主機(jī)
以操作系統(tǒng)用戶omm登錄Gauss集群任意一臺主機(jī),此主機(jī)作為Roach主代理
執(zhí)行source ${BIGDATA_HOME}/mppdb/.mppdbgs_profile命令啟動環(huán)境變量。
1.2????? 進(jìn)入Roach腳本目錄
進(jìn)入$GPHOME/script/目錄
cd $GPHOME/script
1.3????? 開啟歸檔模式
執(zhí)行以下命令開啟集群歸檔模式
python GaussRoach.py -t config --archive=true -p
1.4???? 執(zhí)行備份
在作為Roach主代理的主機(jī)上執(zhí)行以下命令:
python GaussRoach.py -t backup --master-port
舉例:
GaussRoach.py -t backup --master-port 6000 --media-destination /srv/BigData/LocalBackup/media --media-type Disk --metadata-destination /srv/BigData/LocalBackup/media/metadata --parallel-process 3 --compression-level 6
參數(shù)說明:
--media-destination:該參數(shù)用于指定本次備份的數(shù)據(jù)存儲路徑
--media-type Disk:該參數(shù)用于指定本次備份的元數(shù)據(jù)存儲路徑
--parallel-process:備份任務(wù)并發(fā)線程,建議值為每個數(shù)據(jù)節(jié)點(diǎn)(主DN個數(shù)+1)
--compression-level:備份壓縮級別,0~9,值越大,壓縮級別越高,0不壓縮,經(jīng)驗(yàn)證,壓縮級別越高備份速率越低,推薦值:6
查看備份目錄的變化:(此處見附件)
1.5????? 備份結(jié)束,關(guān)閉集群歸檔模式。
python GaussRoach.py -t config --archive=false –p
增量備份
執(zhí)行以下步驟增量備份集群到磁盤:
1.1????? 登錄到Gauss集群主機(jī)
以操作系統(tǒng)用戶omm登錄Gauss集群的任意一臺主機(jī),此主機(jī)作為Roach的主代理
執(zhí)行source ${BIGDATA_HOME}/mppdb/.mppdbgs_profile命令啟動環(huán)境變量。
1.2????? 確定--prior-backup-key
確定—prior-backup-key,每次備份成功后都會生成一個以時間戳命名的備份文件夾,該時間戳(文件夾名稱)就是backupkey
舉例:上次備份目錄下的文件名(/srv/BigData/LocalBackup/media/)的文件名
1.3????? 進(jìn)入Roach目錄
進(jìn)入Roach腳本所在目錄$GPHOME/script/
cd $GPHOME/script
1.4????? 開啟集群歸檔模式。
python GaussRoach.py -t config --archive=true –p
1.5????? 增量備份
在作為Roach主代理的主機(jī)上執(zhí)行以下命令:
python GaussRoach.py -t backup --master-port
舉例:
GaussRoach.py -t backup --master-port 6000 --media-destination /srv/BigData/LocalBackup/media --media-type Disk --metadata-destination /srv/BigData/LocalBackup/media/metadata --parallel-process 3 --compression-level 6 --prior-backup-key 20200629_161652
1.6???? 備份結(jié)束,關(guān)閉集群歸檔模式。
python GaussRoach.py -t config --archive=false –p
四、刪除testdb1,為恢復(fù)做準(zhǔn)備
gsql –d postgres –p 25308 –ar
drop database testdb1;
五、集群恢復(fù)
1.1????? 登錄Gauss集群任意一臺主機(jī)
登錄Gauss集群任意一臺主機(jī),使用集群用戶omm登錄集群任意一臺主機(jī)(作為Roach代理主機(jī)),啟動環(huán)境變量
source ${BIGDATA_HOME}/mppdb/.mppdbgs_profile
1.2????? 進(jìn)入Roach目標(biāo)
進(jìn)入“$GPHOME/script”目錄,(在主代理主機(jī))執(zhí)行集群恢復(fù)操作, 并在恢復(fù)之前清理集群。(注:雖然我指定的是最近一次的backup-key,實(shí)際恢復(fù)的時候是先恢復(fù)全量,然后,逐步恢復(fù)每個增量)
python $GPHOME/script/GaussRoach.py -t restore --clean --media-destination ? /srv/BigData/LocalBackup/media --metadata-destination ? /srv/BigData/LocalBackup/media/metadata? ? --master-port 6000? --media-type ? Disk --backup-key 20200629_171044
1.3????? 啟動集群。
python GaussRoach.py -t start
六、查看恢復(fù)后的集群
可以看到集群已恢復(fù),刪除的testdb1庫已經(jīng)恢復(fù)回來。
附件: Roach測試_博文.docx 1.67MB 下載次數(shù):4次
DWS EI企業(yè)智能 云備份
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。