炫“库”行动—人大金仓有奖征文—KingbseES远程物理备份恢复

本文详细介绍了如何使用KingbaseES的远程物理备份恢复工具,包括环境准备、工具构成、操作步骤,旨在解决数据库系统因故障导致的数据丢失问题。通过配置备份计划和执行全量、增量备份,然后模拟数据服务器故障并进行时间点还原,展示了KingbaseES的高效备份恢复能力。
摘要由CSDN通过智能技术生成

【本文正在参与炫“库”行动-人大金仓有奖征文】
活动链接:https://marketing.csdn.net/p/98bd30353e7cb998b6070a89e8b91edb

概述

计算机系统在运行过程中不可避免的会发生存储故障,系统故障以及人为造成的一些故障,这些问题导致数据库系统出现计划外的停机,如何解决计划外停机所带来的数据丢失等问题,KingbaseES提供了远程物理备份恢复工具来帮助解决这些问题,该工具支持本地备份恢复、远程备份恢复并且还可以支持集群的备份恢复,本文主要记录下kingbase数据库单机远程备份恢复的操作方法。

环境准备

1)准备两台x86服务器,数据服务器提供服务,备份服务器对数据服务器进行备份,备份集存放在备份服务器上。当数据服务器发生存储等导致数据丢失的故障时,可以通过备份服务器上的备份集进行恢复。
2)从Kingbase官网下载安装包进行安装,两台服务器都需要安装
3)两台服务器配置ssh免密
注:两台服务器上备份工具需要在同一个目录下

工具构成

假定数据库安装在kingbase目录下,有如下3个文件和本次备份还原相关:
kingbase/Server/bin/sys_rman :二进制可执行文件,使用该二进制工具进行备份还原
kingbase/Server/bin/sys_backup.sh :该脚本文件可以帮助完成备份前的配置工作以及进行备份任务的配置
kingbase/Server/share/sys_backup.conf :sys_backup.sh脚本对应的配置文件

操作步骤

备份初始化
1)修改数据服务器上data/kingbase.conf,将archive_mode参数值设置为on,取消archive_command参数前的注释
在这里插入图片描述
2)启动数据库(需要使用绝对路径)
在这里插入图片描述
3)接着需要进行备份服务器的配置,备份数据库配置sys_backup.conf
_target_db_style:single代表备份单机
_one_db_ip:填写数据服务器ip
_repo_ip:填写备份服务器ip
_stanza_name:stanza名,随意
_os_user_name:数据库安装的操作系统用户
在这里插入图片描述
_repo_path:备份集存放目录,有权限且不存在的目录
_repo_retention_full_count:最多保留的全量备份集个数
_crond_full_days:每隔几天做一次全量备份(为0表示不设置全量备份的备份计划)
_crond_diff_days:每隔几天做一次差异备份(为0表示不设置差异备份的备份计划)
_crond_incr_days:每隔几天做一次增量备份(为0表示不社会增量备份的备份计划)
_crond_full_hour:每隔几天的几点钟做一次全量备份
_crond_diff_hour:每隔几天的几点钟做一次差异备份
_crond_incr_hour:每隔几天的几点钟做一次增量备份
在这里插入图片描述
如下参数根据操作系统实际情况配置
在这里插入图片描述
_single_data_dir:数据库data目录路径
_single_bin_dir:数据库bin目录路径
_single_db_user:数据库超级用户
在这里插入图片描述
4)sys_backup.conf配置完成后就可以执行./sys_backup.sh init进行初始化,初始化会配置好备份还原所需要的一些配置并进行一次全量备份
在这里插入图片描述
5)执行./sys_backup.sh start可以配置备份计划(会在/etc/cron.d/KINGBASECRON文件中下根据配置文件里的配置写定时任务)
在这里插入图片描述
完成备份初始化后就可以使用命令进行备份还原操作

备份还原操作
1)数据库服务器使用ksql命令连接数据库,创建表,并插入数据
create table t_base(a int,b text);
insert into t_base values(generate_series(1,1000),now());
在这里插入图片描述
2)备份服务器上进行全量备份
./sys_rman --config=/home/kingbase/kbbr_repo/sys_rman.conf --stanza=kingbase --archive-copy --type=full backup

3)数据库服务器使用ksql命令连接数据库,再次创建表,并插入数据
create table t_incr(a int,b text);
insert into t_incr values(generate_series(1,1000),now());

4)备份服务器上进行增量备份,增量备份依赖于上次全量备份
./sys_rman --config=/home/kingbase/kbbr_repo/sys_rman.conf --stanza=kingbase --archive-copy --type=incr backup
在这里插入图片描述
5)数据服务器上停止数据库,并删除data,模拟故障
在这里插入图片描述
6)数据服务器上执行命令查看备份集
./sys_rman --config=/home/kingbase/kbbr_repo/sys_rman.conf --stanza=kingbase info
在这里插入图片描述
7)使用基于时间点的还原,将数据库还原到增量备份后的状态
在原data目录创建一个data空目录,执行如下还原命令进行还原
./sys_rman --config=/home/kingbase/kbbr_repo/sys_rman.conf --stanza=kingbase --type=time --target=‘2021-10-12 17:57:08’ --target-action=‘promote’ restore

8)还原成功后启动数据库,查看数据,还原成功,被删除的data成功还原
在这里插入图片描述

kingbase提供了多种还原方式,其余还原方式可参考kingbase官方文档进行操作。

【本文正在参与炫“库”行动-人大金仓有奖征文】
活动链接:https://marketing.csdn.net/p/98bd30353e7cb998b6070a89e8b91edb

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值