金仓数据库物理备份异地备份配置

环境背景

集群ip:192.168.40.148(主)、192.168.40.149(备)

安装路径: /home/kingbase/cluster/HA_R6/kha

版本:V008R006C009B0014

 

单机ip:192.168.40.138        ------------- 异地备份集群的服务器

安装路径:/opt/Kingbase/ES/V8

版本:V008R006C009B0014

 

说明:

 

1.异地备份中异地服务器备份执行目录需要与源端数据节点的目录一致!

 

2._repo_path="/data/kdb_backup"异地存放备份文件路径/data/kdb_backup,数据节点也需要存在,执行init初始化操作后数据节点同路径下会产生sys_rman.conf配置文件,但备份文件会生成在异地路径下!      

 

                              异地物理备份操作

 

一. 配置异地备份已装好的单机数据库

 

1.暂停已装好的异地备份的数据库服务

 

sys_ctl stop -D  /opt/Kingbase/ES/V8/data

 

2.新建目录需与集群安装目录相同

 

mkdir -p /home/kingbase/cluster/HA_R6/kha/kingbase

 

3.将异地单机数据库KingbaseES/Server目录下的binlibshare移动到新建好的集群目录下

 

cd /opt/Kingbase/ES/V8/Server

 

cp -r bin lib share  /home/kingbase/cluster/HA_R6/kha/kingbase

 

 

 

二. 修改异地节点备份配置文件

 

1.物理备份配置文件路径:

 

/home/kingbase/cluster/HA_R6/kha/kingbase/share/sys_backup.conf

 

2.物理备份执行文件路径:

 

/home/kingbase/cluster/HA_R6/kha/kingbase/bin/sys_backup.sh

 

3.修改异地配置文件

 

vim /home/kingbase/cluster/HA_R6/kha/kingbase/share/sys_backup.conf

 

 

 

# target db style enum:  single/cluster

 

_target_db_style="cluster"   -------single改为cluster

 

# one kingbase node IP

 

# just provide one IP, script will use 'repmgr cluster show' get other node IP

 

_one_db_ip="192.168.40.149"  --数据节点ip

 

# local repo IP, can be same as one_db_ip, means repo located in one db node

 

_repo_ip="192.168.40.138"    --备份节点ip,指异地备份服务器ip

 

# label of this cluster

 

_stanza_name="kingbase"

 

# OS user name of database

 

_os_user_name="kingbase"

 

# !!!! dir to store the backup files

 

# should be accessable for the OS user

 

_repo_path="/home/kingbase/kbbr_repo"   ------存放备份文件及备份配置文件路径

 

# count of keep, over the count FULL-backup will be remove

 

_repo_retention_full_count=5            ---全量备份文件保留五次

 

# count of days, interval to do FULL-backup

 

_crond_full_days=7                     --7天备份一次全量

 

# count of days, interval to do DIFF-backup

 

_crond_diff_days=0                     --不做差异备份

 

# count of days, interval to do INCR-backup

 

_crond_incr_days=1

 

# HOUR to do the FULL-backup

 

_crond_full_hour=2

 

# HOUR to do the DIFF-backup

 

_crond_diff_hour=3

 

# HOUR to do the INCR-backup

 

_crond_incr_hour=4

 

# OS cmd define

 

_os_ip_cmd="/sbin/ip"

 

_os_rm_cmd="/bin/rm"

 

_os_sed_cmd="/bin/sed"

 

_os_grep_cmd="/bin/grep"

 

# !!! these follow 4 parameter ONLY for single style

 

# data dir of single

 

_single_data_dir="/home/kingbase/cluster/HA_R6/kha/kingbase/data" 

 

# bin dir of single

 

_single_bin_dir="/home/kingbase/cluster/HA_R6/kha/kingbase/bin"   

 

# database user of single

 

_single_db_user="system"  

 

# database port of single

 

_single_db_port="54321"  

 

 

 

[注意

 

要求管理员在 sys_backup.sh init 前,数据库节点与外部备份节点之间以相应的 OS 用户,互相进行 SSH 登录,以验证 SSH 登录场景,通过 StrictHostKeyChecking 的检测。 

 

 

 

三.在异地节点执行init操作,进行备份配置

 

cd /home/kingbase/cluster/HA_R6/kha/kingbase/bin

 

1. 执行sys_backup.sh init初始化,start添加定时任务

 

cd /home/kingbase/cluster/HA_R6/kha/kingbase/bin

 

执行下列命令进行备份初始化

 

sys_backup.sh init

 

 

 

执行后会在备份文件路径/home/kingbase/kbbr_repo 创建文件夹、文件、配置文件等,并备份一次全量数据。

 

image

 

 

执行下列命令进行备份添加定时任务

 

sys_backup.sh start

 

/home/kingbase/cluster/V8R6/cluster/kingbase/bin目录下执行sys_backup.sh start将在定时任务中添加备份任务

 

2.查看cat /etc/cron.d/KINGBASECRON(定时任务)

 

添加成功的全量备份定时任务:

 

0 2 */7 * * /home/kingbase/cluster/HA_R6/kha/kingbase/bin/sys_rman --config=/home/kingbase/kbbr_repo/sys_rman.conf --stanza=kingbase --archive-copy --type=full backup >> /home/kingbase/cluster/HA_R6/kha/kingbase/log/sys_rman_backup_full.log 2>&1
0 4 */1 * * /home/kingbase/cluster/HA_R6/kha/kingbase/bin/sys_rman --config=/home/kingbase/kbbr_repo/sys_rman.conf --stanza=kingbase --archive-copy --type=incr backup >> /home/kingbase/cluster/HA_R6/kha/kingbase/log/sys_rman_backup_incr.log 2>&1

image

 至此,物理备份异地成功!

 

posted @ 2025-08-26 21:38  缘来不是你我  阅读(48)  评论(0)    收藏  举报