GBase 8a
备份恢复
文章

实例级、库级、表级(全量、增量备份恢复)

发表于2024-03-26 10:55:466411次浏览5个评论

gcrcman.py参数说明:

使用安装数据库的系统用户执行备份

-Pgbase 安装数据库的系统用户

-p'gbase20110531' 数据库用户gbase对应的密码

-d /home/gbase/back/ 备份存放路径,需保证有wr权限,实例级、库级、表级需要分开备份

各个节点新建备份目录(实例级、库级、表级)

mkdir -p /home/gbase/back

mkdir -p /home/gbase/back_db/

mkdir -p /home/gbase/back_tb/

--实例级全量备份(空库备份)

gcadmin switchmode readonly

python $GCLUSTER_HOME/bin/gcrcman.py -p'gbase20110531' -d /home/gbase/back/

backup level 0

show backup

quit

gcadmin switchmode normal

--创建库db1,然后在db1下创建表t1并且插入数据

gccli -vvv -e"create database db1;"

gccli -vvv -e"create table db1.t1(ID int, name varchar(10));"

gccli -vvv -e"insert into db1.t1 values (1,'zhang'),(2,'wang');"

gccli -vvv -e"select * from db1.t1;"

--库级全量备份

gcadmin switchmode readonly

python $GCLUSTER_HOME/bin/gcrcman.py -p'gbase20110531' -d /home/gbase/back_db/

backup database db1 level 0

show backup

quit

--表级全量备份

python $GCLUSTER_HOME/bin/gcrcman.py -p'gbase20110531' -d /home/gbase/back_tb/

backup table db1.t1 level 0

show backup

quit

gcadmin switchmode normal

--实例级增量备份

新增一条数据(可选)

gccli -vvv -e"insert into db1.t1 values (3,'li');"

gccli -vvv -e"select * from db1.t1;"

gcadmin switchmode readonly

python $GCLUSTER_HOME/bin/gcrcman.py -p'gbase20110531' -d /home/gbase/back/

backup level 1

show backup

quit

--库级增量备份

python $GCLUSTER_HOME/bin/gcrcman.py -p'gbase20110531' -d /home/gbase/back_db/

backup database db1 level 1

show backup

quit

--表级增量备份

python $GCLUSTER_HOME/bin/gcrcman.py -p'gbase20110531' -d /home/gbase/back_tb/

backup table db1.t1 level 1

show backup

quit

gcadmin switchmode normal

--实例级全量恢复

gcadmin switchmode recovery

python $GCLUSTER_HOME/bin/gcrcman.py -p'gbase20110531' -d /home/gbase/back/

recover 0 0

quit

gcadmin switchmode normal

查看db1库、 db2库是否均被删除

gccli -vvv -e"show databases;"

--库级全量恢复

gcadmin switchmode recovery

python $GCLUSTER_HOME/bin/gcrcman.py -p'gbase20110531' -d /home/gbase/back_db/

recover database db1 0 0

quit

gcadmin switchmode normal

gccli -vvv -e"show databases;"

gccli -vvv -e"refresh table db1.t1;"

gccli -vvv -e"select * from db1.t1;"

--表级全量恢复

删除db1.t1

gccli -vvv -e"drop table db1.t1;"

gcadmin switchmode recovery

python $GCLUSTER_HOME/bin/gcrcman.py -p'gbase20110531' -d /home/gbase/back_tb/

recover table db1.t1 0 0

quit

gcadmin switchmode normal

gccli -vvv -e"refresh table db1.t1;"

gccli -vvv -e"select * from db1.t1;"

--实例级增量恢复

删除db1,创建db2

gccli -vvv -e"drop database db1;"

gccli -vvv -e"create database db2;"

gccli -vvv -e"create table db2.t2(ID int, name varchar(10));"

gccli -vvv -e"insert into db2.t2 values (1,'zhang'),(2,'wang');"

gccli -vvv -e"select * from db2.t2;"

gcadmin switchmode recovery

python $GCLUSTER_HOME/bin/gcrcman.py -p'gbase20110531' -d /home/gbase/back/

recover 0 1

quit

查看db1库是否被恢复正常,db2库是否被删除

gcadmin switchmode normal

gccli -vvv -e"show databases;"

gccli -vvv -e"select * from db1.t1;"

--库级增量恢复

删除db1

gccli -vvv -e"drop database db1;"

gcadmin switchmode recovery

python $GCLUSTER_HOME/bin/gcrcman.py -p'gbase20110531' -d /home/gbase/back_db/

recover database db1 0 1

quit

查看db1库是否被恢复正常

gcadmin switchmode normal

gccli -vvv -e"refresh table db1.t1;"

gccli -vvv -e"select * from db1.t1;"

--表级增量恢复

删除db1.t1

gccli -vvv -e"drop table db1.t1;"

gcadmin switchmode recovery

python $GCLUSTER_HOME/bin/gcrcman.py -p'gbase20110531' -d /home/gbase/back_tb/

recover table db1.t1 0 1

quit

gcadmin switchmode normal

gccli -vvv -e"refresh table db1.t1;"

gccli -vvv -e"select * from db1.t1;"

评论

登录后才可以发表评论
崔哥发表于 5个月前
梦觉透窗风一线,寒灯吹息。那堪酒醒,又闻空阶,夜雨频滴。嗟因循、久作天涯客。负佳人、几许盟言,便忍把、从前欢会,陡顿翻成忧戚。愁极,再三追思,洞房深处,几度饮散歌阑,香暖鸳鸯被。岂暂时疏散,费伊心力。殢云尤雨,有万般千种,相怜相惜。恰到如今,天长漏永,无端自家疏隔。知何时、却拥秦云态?原低帏昵枕,轻轻细说与,江乡夜夜,数寒更思忆。
崔哥发表于 3个月前
兔园标物序,惊时最是梅。衔霜当路发,映雪拟寒开。枝横却月观,花绕凌风台。朝洒长门泣,夕驻临邛杯。应知早飘落,故逐上春来。
经纬发表于 2个月前
学习了
崔哥发表于 2个月前
春风倚棹阖闾城,水国春寒阴复晴。细雨湿衣看不见,闲花落地听无声。日斜江上孤帆影,草绿湖南万里情。东道若逢相识问,青袍今已误儒生。
用户头像
柒柒天晴发表于 1个月前
学习