实例级、库级、表级(全量、增量备份恢复)
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;"
评论
热门帖子
- 12025-12-01浏览数:182192
- 22023-05-09浏览数:24465
- 42023-09-25浏览数:17737
- 52020-05-11浏览数:16750