案例说明:

本案例采用sys_backup.sh执行物理备份,备份使用如下逻辑架构:数据库主机采用CentOS 7系统,repo采用kylin V10 Server。

  • 单实例+外部备份服务器

备份逻辑架构是,在单实例环境下,通过专用的备份服务器执行sys_backup.sh的物理备份。

  • 备份架构节点信息:

  • 数据库版本信息:

test=# select version();
version
------------------------------------------------------------------------------------------------------------------
KingbaseES V008R006C005B0054 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-46), 64-
bit
(1 row)

一、备份环境配置

1、首先建立repo和数据库节点之间的ssh互信(kingbase和root用户)

[kingbase@srv01 bin]$ uname -a
Linux srv01 4.19.90-17.ky10.x86_64 #1 SMP Sun Jun 28 15:41:49 CST 2020 x86_64 x86_64 x86_64 GNU/Linux [kingbase@srv01 bin]$ ssh node1
Last login: Mon May 30 21:21:11 2022
[kingbase@node1 ~]$ [root@srv01 ~]# ssh node1
Last login: Mon May 30 21:42:32 2022 from 192.168.8.100
[root@node1 ~]#

2、在repo节点建立备份相关的目录及文件(不需要安装数据库软件)

=注意:目录结构和数据库节点尽量一致,并且保证sys_backup.sh能在repo节点正常执行。=

此版本数据库节点的目录:

[kingbase@srv01 ~]$  mkdir -p /opt/Kingbase/ES/V8R6_054/KESRealPro/V008R006C005B0054/Server/log

kingbase@node1 zip]$ pwd
/opt/Kingbase/ES/V8R6_054/ClientTools/guitools/DeployTools/zip
[kingbase@node1 zip]$ scp db.zip srv01:/opt/Kingbase/ES/V8R6_054/KESRealPro/V008R006C005B0054/Server/

将集群db.zip拷贝到repo主机后,解压:

[kingbase@srv01 Server]$ ls -lh
total 338M
drwxr-xr-x 2 kingbase kingbase 4.0K May 31 14:56 bin
-rw------- 1 kingbase kingbase 338M May 31 14:14 db.zip
drwxrwxr-x 5 kingbase kingbase 8.0K Apr 7 16:17 lib
drwx------ 2 kingbase kingbase 4.0K May 31 14:59 log
drwxrwxr-x 8 kingbase kingbase 4.0K Apr 7 16:17 share

二、初始化备份配置

1、查看数据库节点的archive_command配置

=注意:此archive_command配置,在kingbase.conf中如果未被注释,在sys_backup.sh init时会自动配置。=

[kingbase@node1 data]$ cat kingbase.conf |grep archive_com
archive_command='export TZ=Asia/Shanghai;/opt/Kingbase/ES/V8R6_054/KESRealPro/V008R006C005B0054/Server/bin/sys_rman --config /home/kingbase/kbbr1_repo/sys_rman.conf --stanza=kingbase archive-push %p'

2、在repo节点配置sys_backup.conf文件

[kingbase@srv01 bin]$ cat sys_backup.conf |grep -v ^$|grep -v ^#
_target_db_style="single"
_one_db_ip="192.168.8.200"
_repo_ip="192.168.8.100"
_stanza_name="kingbase"
_os_user_name="kingbase"
_repo_path="/home/kingbase/kbbr1_repo"
_repo_retention_full_count=5
_crond_full_days=7
_crond_diff_days=0
_crond_incr_days=1
_crond_full_hour=2
_crond_diff_hour=3
_crond_incr_hour=4
_band_width=0
_os_ip_cmd="/sbin/ip"
_os_rm_cmd="/bin/rm"
_os_sed_cmd="/bin/sed"
_os_grep_cmd="/bin/grep"
_single_data_dir="/data/kingbase/v8r6_054/data"
_single_bin_dir="/opt/Kingbase/ES/V8R6_054/KESRealPro/V008R006C005B0054/Server/bin"
_single_db_user="system"
_single_db_port="54322"
_use_scmd=off

3、配置数据库免密登录

[kingbase@node1 ~]$ cat .encpwd
*:*:*:system:MTIzNDU2
*:*:*:esrep:YmVpamluZw== [kingbase@node1 bin]$ ./ksql -U system test -p 54322
ksql (V8.0)
Type "help" for help. test=#

4、执行sys_backup.sh初始化

[kingbase@srv01 bin]$ ./sys_backup.sh init
# generate single sys_rman.conf...DONE
# update single archive_command with sys_rman.archive-push...DONE
# create stanza and check...(maybe 60+ seconds)
# create stanza and check...DONE
# initial first full backup...(maybe several minutes)
# initial first full backup...DONE
# Initial sys_rman OK.
'sys_backup.sh start' should be executed when need back-rest feature.

5、查看备份初始化后的配置

=注意:对于repo的存储目录,在repo和数据库节点都会创建,只创建sys_rman.conf文件,备份存储在备份服务器。=

[kingbase@srv01 bin]$ cat /home/kingbase/kbbr1_repo/sys_rman.conf
# Genarate by script at 20220531145653, should not change manually
[kingbase]
kb1-path=/data/kingbase/v8r6_054/data
kb1-port=54322
kb1-user=system
kb1-host=192.168.8.200
kb1-host-user=kingbase [global]
repo1-path=/home/kingbase/kbbr1_repo
repo1-retention-full=5
log-path=/opt/Kingbase/ES/V8R6_054/KESRealPro/V008R006C005B0054/Server/log
log-level-file=info
log-level-console=info
log-subprocess=y
process-max=4
#### default gz, support: gz none
compress-type=gz
compress-level=3
band-width=0

三、执行sys_backup.sh备份

1、创建备份计划任务

[kingbase@srv01 bin]$ ./sys_backup.sh start
Enable some sys_rman in crontab-daemon
Authorized users only. All activities may be monitored and reported.
Set full-backup in 7 days
Authorized users only. All activities may be monitored and reported.
Authorized users only. All activities may be monitored and reported.
Authorized users only. All activities may be monitored and reported.
Set incr-backup in 1 days
Authorized users only. All activities may be monitored and reported.
Authorized users only. All activities may be monitored and reported.
0 2 */7 * * kingbase /opt/Kingbase/ES/V8R6_054/KESRealPro/V008R006C005B0054/Server/bin/sys_rman --config=/home/kingbase/kbbr1_repo/sys_rman.conf --stanza=kingbase --archive-copy --type=full backup >> /opt/Kingbase/ES/V8R6_054/KESRealPro/V008R006C005B0054/Server/log/sys_rman_backup_full.log 2>&1
0 4 */1 * * kingbase /opt/Kingbase/ES/V8R6_054/KESRealPro/V008R006C005B0054/Server/bin/sys_rman --config=/home/kingbase/kbbr1_repo/sys_rman.conf --stanza=kingbase --archive-copy --type=incr backup >> /opt/Kingbase/ES/V8R6_054/KESRealPro/V008R006C005B0054/Server/log/sys_rman_backup_incr.log 2>&1

2、手工执行sys_rman备份测试

[kingbase@srv01 ~]$ /opt/Kingbase/ES/V8R6_054/KESRealPro/V008R006C005B0054/Server/bin/sys_rman --config=/home/kingbase/kbbr1_repo/sys_rman.conf --stanza=kingbase --archive-copy --type=full backup
.......
2022-05-31 16:06:13.022 P00 INFO: backup stop archive = 000000010000000000000022, lsn = 0/22000128
2022-05-31 16:06:13.223 P00 INFO: check archive for segment(s) 000000010000000000000022:000000010000000000000022
2022-05-31 16:06:14.409 P00 INFO: new backup label = 20220531-004504F
2022-05-31 16:06:15.475 P00 INFO: full backup size = 460.9MB, file total = 2175
2022-05-31 16:06:15.476 P00 INFO: backup command end: completed successfully (136119ms)
2022-05-31 16:06:15.476 P00 INFO: expire command begin 2.27: --config=/home/kingbase/kbbr1_repo/sys_rman.conf --exec-id=100087-403370e7 --log-level-console=info --log-level-file=info --log-path=/opt/Kingbase/ES/V8R6_054/KESRealPro/V008R006C005B0054/Server/log --repo1-path=/home/kingbase/kbbr1_repo --repo1-retention-full=5 --stanza=kingbase
2022-05-31 16:06:15.864 P00 INFO: expire command end: completed successfully (388ms)

3、查看备份信息

[kingbase@srv01 ~]$ /opt/Kingbase/ES/V8R6_054/KESRealPro/V008R006C005B0054/Server/bin/sys_rman --config=/home/kingbase/kbbr1_repo/sys_rman.conf --stanza=kingbase  info
stanza: kingbase
status: ok
cipher: none db (current)
wal archive min/max (V008R006C005B0054): 00000001000000000000001E/000000010000000000000022 full backup: 20220530-233807F
timestamp start/stop: 2022-05-30 23:38:07 / 2022-05-30 23:40:51
wal start/stop: 000000010000000000000020 / 000000010000000000000020
database size: 476.9MB, database backup size: 476.9MB
repo1: backup set size: 13.4MB, backup size: 13.4MB full backup: 20220531-004504F
timestamp start/stop: 2022-05-31 00:45:04 / 2022-05-31 00:47:16
wal start/stop: 000000010000000000000022 / 000000010000000000000022
database size: 476.9MB, database backup size: 476.9MB
repo1: backup set size: 13.4MB, backup size: 13.4MB

四、总结

对于KingbaseES V8R6 单实例使用sys_backup.sh执行物理备份,可以使用专门的备份服务器repo,备份的操作在repo上,但实际上还是通过调用sys_rman在集群节点上完成物理备份。

KingbaseES V8R6单实例外部备份案例的更多相关文章

  1. KingbaseES V8R6单实例外部备份故障案例

    案例说明: 在KingbaseES V8R6单实例环境,配置外部备份服务器使用sys_backup.sh物理备份时,出现以下"WAL segment xxx was not archived ...

  2. KingbaseES V8R6集群外部备份案例

    案例说明: 本案例采用sys_backup.sh执行物理备份,备份使用如下逻辑架构:集群采用CentOS 7系统,repo采用kylin V10 Server. 一主一备+外部备份 此场景为主备双机常 ...

  3. Oracle DataBase单实例使用ASM案例(1)--ASM基本概念

    版权声明:本文为博主原创文章,未经博主允许不得转载. Oracle DataBase单实例使用ASM案例(1)--ASM基本概念 系统环境: 操作系统:RH EL5-64 Oracle 软件: Ora ...

  4. KingbaseES V8R6C5单实例sys_backup.sh备份案例

    ​ 案例说明: KingbaseES V8R6C5版本中使用了securecmdd工具,用于主机节点间的通讯,默认端口8890.备份工具sys_backup.sh默认使用了securecmdd工具,对 ...

  5. KingbaseES V8R6 账号异常登录锁定案例

    数据库版本: test=> select version(); version --------------------------------------------------------- ...

  6. kingbaseES R3 集群备库转换为单实例库案例

    案例说明: 在生产环境需要将集群中架构转换为单实例环境,本案例以备库转换为单实例库为案例,介绍了两种方案,一种在数据库数据量小的环境下采用 sys_dumpall 导出导入方式建立单实例库:另外一种是 ...

  7. KingbaseES V8R6集群维护之--修改数据库服务端口案例

    ​ 案例说明: 对于KingbaseES数据库单实例环境,只需要修改kingbase.conf文件的'port'参数即可,但是对于KingbaseES V8R6集群中涉及到多个配置文件的修改,并且在应 ...

  8. 【RAC】将单实例备份集恢复为rac数据库

    [RAC]将单实例备份集恢复为rac数据库 一.1  BLOG文档结构图 一.2  前言部分 一.2.1  导读 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识, ...

  9. SpringBoot定时任务 - 集成quartz实现定时任务(单实例和分布式两种方式)

    最为常用定时任务框架是Quartz,并且Spring也集成了Quartz的框架,Quartz不仅支持单实例方式还支持分布式方式.本文主要介绍Quartz,基础的Quartz的集成案例本,以及实现基于数 ...

随机推荐

  1. 全网求解,用Python处理一个基础题目

    昨天在群里看见一个Python的问题,趁着今天有那么一点点时间,就想把这个题目分享出来,让大家一起解决.毕竟三个臭皮匠,赛过诸葛亮.原始数据如下: 1 origin_lst = [0, 0, 1, 2 ...

  2. 入门Python数据分析最好的实战项目(一)分析篇

    数据初探 首先导入要使用的科学计算包numpy,pandas,可视化matplotlib,seaborn,以及机器学习包sklearn. python学习交流群:660193417### import ...

  3. dotnet 控制台 使用 Microsoft.Maui.Graphics 配合 Skia 进行绘图入门

    本文将告诉大家如何在 dotnet 的控制台模式下,采用 MAUI 自绘库 Microsoft.Maui.Graphics 进行绘图,设置 Microsoft.Maui.Graphics 底层调用 M ...

  4. NC15975 小C的记事本

    NC15975 小C的记事本 题目 题目描述 小C最近学会了java小程序的开发,他很开心,于是想做一个简单的记事本程序练练手. 他希望他的记事本包含以下功能: 1.append(str),向记事本插 ...

  5. Tapdata Cloud 版本上新!新增TiDB等数据源支持,连接和任务功能增强,体验更优

    Tapdata Cloud cloud.tapdata.net Tapdata Cloud 是国内首家异构数据库实时同步云平台,目前支持Oracle.MySQL.PG.SQL Server.Mongo ...

  6. letsencrypt更换pip源

    vim letsencrypt-auto 将DEFAULT_INDEX_BASE = 'https://pypi.python.org'改为DEFAULT_INDEX_BASE = 'http://m ...

  7. JavaScript进阶知识点——函数和对象详解

    JavaScript进阶知识点--函数和对象详解 我们在上期内容中学习了JavaScript的基本知识点,今天让我们更加深入地了解JavaScript JavaScript函数 JavaScript函 ...

  8. postgres备份与恢复

    一  利用pgAdmin工具进行备份与恢复 pgAdmin是postgres官方的客户端管理工具,可以进行数据库的涉及与维护. 示例:以logs库为例记录操作       1)  右击需要备份的数据( ...

  9. 钡铼BL102分布式IO系统如何应用于锂电池行业

    近年来,全球新能源汽车的蓬勃发展促进了锂电池行业的发展.随着锂电池标准化程度的提高,电池和模块规格的标准化是未来的发展趋势,也促进了自动化模块生产线的发展. 锂电池模块生产线通过涂胶-电池堆叠-组装- ...

  10. 转一篇MYSQL文章《数据库表设计,没有最好只有最适合》

    http://mp.weixin.qq.com/s/a8klpzM5iam0_JYSw7-U4g 我们在设计数据库的时候,是否会突破常规,找到最适合自己需求的设计方案,下面来举个例子: 常用的邻接表设 ...