文章目录
指定备份集恢复
先查看集群状态
查看kingbase是否启用
模拟删除数据之后指定备份集恢复
1、删除表学生表
apl
[kingbase@node1 ~]$ ksql test system
授权类型: SALES-企业版.
输入 "help" 来获取帮助信息.
test=# \dt
关联列表
架构模式 | 名称 | 类型 | 拥有者
----------+----------+--------+--------
public | students | 数据表 | system
(1 行记录)
test=# select * from students ;
student_id | name | age | gender | enrollment_date
------------+------+-----+--------+-----------------
1 | 张三 | 20 | M | 2023-09-01
2 | 李四 | 21 | F | 2023-09-01
3 | 王五 | 19 | M | 2024-02-20
4 | 赵六 | 22 | M | 2022-09-01
5 | 孙七 | 20 | F | 2023-09-01
(5 行记录)
test=# drop table students ;
DROP TABLE
test=# select * from students ;
ERROR: relation "students" does not exist
第1行select * from students ;
test=# \q
2、复制rman
apl
[kingbase@node1 backup]$ cp -r rman rman.bak
[kingbase@node1 backup]$ cd rman.bak/
[kingbase@node1 rman.bak]$ vim sys_rman.conf
3、停集群
[kingbase@node1 rman.bak]$ sys_monitor.sh stop
4、看备份集序号
apl
[kingbase@node1 rman.bak]$ crontab -l
[kingbase@node1 rman.bak]$ /home/kingbase/cluster/kingbase/bin/sys_rman --config=/home/kingbase/backup/rman/sys_rman.conf --stanza=kingbase info
5、指定备份集恢复
apl
[kingbase@node1 rman.bak]$ /home/kingbase/cluster/kingbase/bin/sys_rman --config=/home/kingbase/backup/rman.bak/sys_rman.conf --stanza=kingbase --set='20251228-202553F_20260102-183440I' restore
(注意:技术文档中的指定备份集恢复带有--target-action,这个参数需要指定(如时间,事务ID),如果不需要指定可以去掉)
6、编辑配置文件
apl
[kingbase@node1 rman.bak]$ cd /home/kingbase/data/
[kingbase@node1 data]$ vim es_rep.conf
[kingbase@node1 data]$ vim kingbase.conf
[kingbase@node1 data]$ vim kingbase.auto.conf
[kingbase@node1 data]$ vim es_rep.conf
7、启用新实例
apl
[kingbase@node1 data]$ sys_ctl -D /home/kingbase/data/ start
8、检查数据是否恢复,导出数据
apl
[kingbase@node1 data]$ ksql test system -p 54325
授权类型: SALES-企业版.
输入 "help" 来获取帮助信息.
test=# \dt
关联列表
架构模式 | 名称 | 类型 | 拥有者
----------+----------+--------+--------
public | students | 数据表 | system
(1 行记录)
test=# \q
[kingbase@node1 data]$ sys_dump -U system -d test -p 54325 -f /home/kingbase/students.sql
9、启用集群,导入数据
apl
[kingbase@node1 ~]$ sys_monitor.sh start
[kingbase@node1 ~]$ ksql test system -p 54321
授权类型: SALES-企业版.
输入 "help" 来获取帮助信息.
test=# \dt
Did not find any relations.
test=# \q
[kingbase@node1 ~]$ ksql -U system -d test -p 54321 -f /home/kingbase/students.sql
10、检验
apl
[kingbase@node1 ~]$ ksql test system -p 54321
授权类型: SALES-企业版.
输入 "help" 来获取帮助信息.
test=# \dt
关联列表
架构模式 | 名称 | 类型 | 拥有者
----------+----------+--------+--------
public | students | 数据表 | system
(1 行记录)
test=# \q
关联列表
架构模式 | 名称 | 类型 | 拥有者
----------+----------+--------+--------
public | students | 数据表 | system
(1 行记录)
test=# \q