金仓数据库KingbaseES备份与恢复工具手册(sys_rman工具介绍)

本文主要介绍物理备份工具(sys_rman)的使用方法。包括备份初始化配置、备份、还原、恢复、备份集管理等。

  • 工具sys_rman属于物理备份还原

  • 工具备份的对象,既可以是数据库单机实例,也可以是数据库集群

  • 工具初始配置时、备份时,数据库服务必须处于运行状态、读写功能正常、集群各节点在线

  • 工具的初始配置、备份,必须在REPO仓库节点上执行

  • 工具的还原,必须在DB数据库节点上执行

目录

3.1. 备份架构 ¶

3.1.1. 单机+外部备份 ¶

3.1.2. 单机+内部备份 ¶

3.1.3. 一主一备+外部备份 ¶

3.1.4. 一主一备+内部备份 ¶

3.2. 如何搭建REPO节点 ¶

3.3. 工具的构成 ¶

3.4. 工具使用约定 ¶

3.1. 备份架构 

本章节列举常用的四种场景的备份架构。

3.1.1. 单机+外部备份 

此场景为单机数据库节点和REPO备份服务器节点。备份服务器是一个单独的物理设备,相对独立,具有较高的冗余度,备份不会随着数据库节点故障而失效。

3.1.2. 单机+内部备份 

此场景为单机数据库节点内部备份,方便部署和操作,但备份REPO与数据库实例处于同一个物理主机,冗余度较低。

3.1.3. 一主一备+外部备份 

此场景为主备双机常规环境设计,其中REPO节点位于独立的服务器。可选配置从备库拷贝数据文件,极大地减少备份为主库带来的性能损耗,且增加了第三方专用存储服务器,用于存放和管理备份文件。

3.1.4. 一主一备+内部备份 

此场景为主备双机常规环境设计,其中repo 节点位于当前数据库服务器的主节点。可选配置从备库拷贝数据文件,极大地减少备份为主库带来的性能损耗。

3.2. 如何搭建REPO节点 

REPO节点的搭建可以采用安装KingbaseES V8R6软件或拷贝文件目录的方式。

安装方式:请在对应的REPO服务器上,安装KingbaseES V8R6产品,安装目录必须与当前环境中的DB数据库节点安装目录一致;

拷贝方式:请拷贝DB数据库节点目录下的所有文件和文件夹,包含bin、lib、share、etc等子文件夹,拷贝到REPO服务器上,位置和DB数据库节点安装目录保持一致。

以DB节点安装到/home/kingbase/cluster/project/cluster/kingbase/为例:

安装或拷贝后的REPO节点,在/home/kingbase/cluster/project/cluster/kingbase/目录具有相关内容:

3.3. 工具的构成 

工具不需要额外安装,由KingbaseES安装包统一部署。所包含的可执行程序和配置文件及其功能说明如下:

文件名

用途及路径

说明

sys_rman

二进制可执行文件,执行备份还原的核心文件; 位于安装目录的./bin目录下

此命令可以在数据库节点和备份服务器 上执行,读取sys_rman.conf配置信息

sys_backup.sh

脚本文件,用于协助管理员完成初始配置; 位于安装目录的./bin目录下

只能在REPO节点上执行,执行初始化 自动生成sys_rman.conf文件

sys_backup.conf

初始化脚本对应的配置文件; 模板位于安装目录./kingbase/share下。

执行sys_backup.sh时需要 读取该文件的配置信息

sys_rman.conf

运行时配置文件,将由初始化配置自动生成

自动生成运行时配置文件, 不建议人为修改

sys_backup.sh命令格式说明:

Usage: sys_backup.sh {init|start|stop|pause|unpause}

参数说明:

  • init:初始化备份还原功能,该命令依赖于数据库实例已经正常工作,请勿在数据库业务繁忙时执行,业务繁忙时,可能会由于归档没落盘,或其他条件检查导致初始化失败

  • start:启动CRONTAB任务来完成备份功能

  • stop:停止CRONTAB任务来完成备份功能

  • pause:暂时停止备份功能

  • unpause:恢复被暂停的备份功能

sys_backup.conf配置说明: sys_backup.conf 配置说明详见 准备初始配置文件

sys_rman命令使用说明: sys_rman命令使用说明详见 备份

注意

文档后续章节,以工具安装于目录/home/kingbase/cluster/project/cluster/kingbase/bin/为例,以sys_rman.conf配置文件位于/home/kingbase/kbbr_repo/sys_rman.conf为例。

3.4. 工具使用约定 

  • 工具至多支持8个DB节点的集群

  • 启动数据库实例时,应该使用绝对路径来指定data目录。

  • 跨机备份场景,需保证sys_rman二进制文件在数据库节点和备份节点的目录结构保持一致(包括软连接、绝对路径)

  • 如果操作系统是UOS或者Deepin,需要在系统配置文件/etc/profile末尾增加一行

    export OPENSSL_CONF=/etc/ssl/
    
  • 集群中witness节点不用备份,无需配置witness ip至备份配置文件中

  • 集群中的每个DB数据库节点、REPO备份服务器,都将创建REPO_PATH,如果已有此目录或权限问题,将报错退出

  • 集群中所有节点必须做时钟同步,系统时间需保持一致(要求至少误差范围在2s以内)

  • 工具不支持UNLOGGED TABLE的数据内容的备份和还原

  • 在单机或集群的外部备份场景下,不同节点之间需要远程访问,V008R006C005B0023之后的版本,支持securecmdd或sshd;之前的版本支持sshd。

  • 使用securecmdd功能时,管理员需要在每个DB节点和REPO节点启动securecmdd相关服务。启动方式参考《KingbaseES主备和读写分离集群使用手册》3.1.3. 远程通信工具

  • 使用sshd功能时,集群数据节点和REPO节点,root用户和数据库用户应该是ssh配置交叉免密登录,工具只支持默认的 TCP 22 端口

  • 块增量备份功能,使用的前提条件是启用ktrack插件,生效后做一次全量备份或增量备份或差异备份,参考《KingbaseES插件参考手册》ktrack章节。

  • 工具的操作日志,默认情况下,位于/log/目录中,以-<sys_rman comand>.log为命名格式,如:kingbase-backup.log、kingbase-restore.log等。

  • 工具backup、check、stanza-create等操作时需连接一数据库,默认为test库,该库于initdb时创建因而无需额外操作;如test库不存在,执行sys_rman 相关操作时需使用 --kb1-database 指定一个存在的数据库,例如: --kb1-database=test1 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值