测试环境架构:磐维2.0一主两备
测试流程:在主节点创建测试表后,备份数据,在备1节点进行恢复,打开数据库做备份有效性验证,再重建备库
test=# create table public.test1(id int);
CREATE TABLE
test=# insert into public.test1 values(1);
INSERT 0 1
test=# select * from public.test1;
id
----
1
(1 row)
初始化备份路径(主节点、备1节点)
gs_probackup init -B /backup
添加备份实例(主节点、备1节点)
gs_probackup add-instance -B /backup --instance=test -D /database/panweidb/data -p 17700
全量备份(主节点)
gs_probackup backup -B /backup --instance=test -b FULL
INFO: Backup start, pw_probackup version: 2.4.2, instance: test, backup ID: SAYNVJ, backup mode: FULL, wal mode: STREAM, remote: false, compress-algorithm: none, compress-level: 1
LOG: Backup destination is initialized
LOG: This PanWeiDB instance was initialized with data block checksums. Data block corruption will be detected
LOG: Database backup start
INFO: PGDATA size: 968MB
LOG: started streaming WAL at 0/1E000000 (timeline 1)
[2024-03-26 23:18:56]: check identify system success
[2024-03-26 23:18:56]: send START_REPLICATION 0/1E000000 success
[2024-03-26 23:18:56]: keepalive message is received
INFO: Start transferring data files
[2024-03-26 23:18:56]: keepalive message is received
LOG: Creating page header map "/backup/backups/test/SAYNVJ/page_header_map"
[2024-03-26 23:19:01]: keepalive message is received
[2024-03-26 23:19:06]: keepalive message is received
INFO: Data files are transferred, time elapsed: 10s
INFO: wait for pg_stop_backup()
INFO: pg_stop backup() successfully executed
LOG: stop_lsn: 0/1E0002F8
LOG: Looking for LSN 0/1E0002F8 in segment: 00000001000000000000001E
LOG: Found WAL segment: /backup/backups/test/SAYNVJ/database/pg_xlog/00000001000000000000001E
LOG: Thread [0]: Opening WAL segment "/backup/backups/test/SAYNVJ/database/pg_xlog/00000001000000000000001E"
LOG: Found LSN: 0/1E0002F8
[2024-03-26 23:19:11]:(null): not renaming "/backup/backups/test/SAYNVJ/database/pg_xlog/00000001000000000000001F", segment is not complete.
LOG: finished streaming WAL at 0/1F0000B0 (timeline 1)
LOG: Getting the Recovery Time from WAL
LOG: Thread [0]: Opening WAL segment "/backup/backups/test/SAYNVJ/database/pg_xlog/00000001000000000000001E"
INFO: Syncing backup files to disk
INFO: Backup files are synced, time elapsed: 1s
INFO: Validating backup SAYNVJ
INFO: Backup SAYNVJ data files are valid
INFO: Backup SAYNVJ resident size: 1000MB
INFO: Backup SAYNVJ completed
查看备份结果
gs_probackup show -B /backup --instance=test
=========================================================================================================================================
Instance Version ID Recovery Time Mode WAL Mode TLI Time Data WAL Zratio Start LSN Stop LSN Type Status
=========================================================================================================================================
test 9.2 SAYNVJ 2024-03-26 23:19:06+08 FULL STREAM 1/0 17s 984MB 16MB 0.98 0/1E000028 0/1E0002F8 FILE OK
test 9.2 SAYM7H 2024-03-26 22:43:10+08 FULL STREAM 1/0 23s 984MB 16MB 0.98 0/1C000028 0/1C000490 FILE OK
cm_ctl stop -n 1
[omm@test2 test]$ cm_ctl stop -n 1
cm_ctl: stop the node: 1.
cm_ctl: stop node, nodeid: 1
........................
cm_ctl: stop node successfully.
[omm@test2 test]$ gs_om -t status --detail
[ CMServer State ]
node node_ip instance state
---------------------------------------------------------------------
1 test1 192.168.1.11 1 /database/panweidb/cm/cm_server Down
2 test2 192.168.1.12 2 /database/panweidb/cm/cm_server Primary
3 test3 192.168.1.13 3 /database/panweidb/cm/cm_server Standby
[ Cluster State ]
cluster_state : Degraded
redistributing : No
balanced : No
current_az : AZ_ALL
[ Datanode State ]
node node_ip instance state
-----------------------------------------------------------------------
1 test1 192.168.1.11 6001 /database/panweidb/data P Down Unknown
2 test2 192.168.1.12 6002 /database/panweidb/data S Primary Normal
3 test3 192.168.1.13 6003 /database/panweidb/data S Standby Normal
将备份传输到备1节点
scp -r pg_probackup.conf SAYNVJ omm@test1:/backup/backups/test/
备1节点查看备份