暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Kingbase数据源安装部署金仓KFS同步程序—KingbaseES单机作为源端时的安装部署

原创 KFS补给站 2024-12-17
269

 


关键字:

KingbaseFlysync、KFS、replicator、同步程序、服务端、flysync.ini、安装部署、KingbaseES、KingbaseES单机安装部署KingbaseFlysync

 

一、 概述

Kingbase FlySync 支持基于 Kingbase xlogical 形式的数据同步,通过解析 kingbase 的 xlogical日志 来进行数据的增 量解析。下面将介绍 kingbase 作为复制的源端进行部署的方式。

二、 安装前准备

前置条件:已经完成KingbaseES单机数据库的安装部署


2.1 环境信息

参数名

参数

源端数据库IP地址

10.10.3.199

安装KFS同步程序IP地址

10.10.3.199

KESV8数据名

test

Kesv8数据库监听端口号

54321

可用内存

>4GB

可用储存空间

>1GB+7*每日数据增量

2.2 端口开放

1、临时关闭防火墙服务(服务器重启后失效)

service firewalld stop   

永久关闭防火墙服务

chkconfig firewalld off  

 

2、若有特殊情况如业务要求需要开启防火墙,则需要保证KFS同步程序所需端口可用,若不可用,可以在后续配置中修改默认端口。

telnet xx.xx.xx.xx 端口号

Kingbase FlySync同步服务运行所需的默认端口如下:

端口

描述

11000/11001

KFS远程管理/监控RMI端口

3112

KUFL传输接口

2.3 创建KFS同步程序安装用户

假设KFS同步程序安装用户为fly,创建如下(本文设置fly用户密码为123):

adduser fly

passwd fly

2.4 ruby环境配置

上传ruby包到KFS同步程序安装服务器下并解压:

unzip rbenv_2.2.2_linux_x64.zip

图片.png

然后在KFS同步程序安装用户的环境变量中进行配置

vi ~/.bash_profile

export RUBY_HOME=ruby绝对路径

export PATH=$RUBY_HOME/bin:$PATH

source ~/.bash_profile

2.5 安装包准备 

准备需要安装的Kingbase FlySync同步程序安装包和license文件。

2.6 KingbaseES数据准备

2.6.1 检查kesv8是否支持decodebuf插件

在 复 制 中 我 们 使 用 了 decoderbufs 插 件 进 行 中 间 数 据 的 存 储, 因 此 首 先 检 查 V8 数 据 库 是 否 已 经 支 持 decoderbufs 插 件。 在 Kingbase FlySync 的 安 装 包 中 extensions 目 录 中 提 供 了 相 关 依 赖 文 件 (kfs_decoderbufs_lib_mips64_v8r2.zip),解压 zip 包可得到。

1. 检查 V8 安装目录下的/lib 目录,是否有 decoderbuf.so 和 kfs_current_query.so 包,若没有, 将 Kingbase FlySync 安装包中附带的 decoderbuf.so 和 kfs_current_query.so 复制到 Kingbase 安装目录的/lib 目录下。

 2. 检查 V8 安装目录下的/share/extension 目录,是否有 decoderbufs.control 文件,若没有,将 Kingbase FlySync 安装包中附带的 decoderbuf.control 复制到 Kingbase 安装目录的/share/extension 目录下。

2.6.2 KESV8数据库相关设置:

1. 编辑安装目录下 data/sys_hba.conf 文件, 增加如下配置,使用户有复制权限:

 host replication all 127.0.0.1/32 md5

 host replication all 0.0.0.0/0 md5

2. 编辑安装目录下 data/kingbase.conf 文件, 修改如下配置:

参数配置

含义

max_wal_senders = 2* 数据库个数

日志发送进程数 (最小为 4)

wal_keep_segments = 4

保留日志数量,根据磁盘空间设置,越大越好

max_replication_slots = 2* 数据库个数

复制槽数量 (最小为 4)

ora_input_emptystr_isnull=off

关闭空字符串显示为 null(pg 兼容模式需配置)

全部配置完成后,重启数据库生效

三、安装执行

3.1 并解压KFS同步程序

tar –zxvf KingbaseFlysync-Vxxxxxxxxxxxxxx-replicator.tar.gz

图片.png

3.2 配置flysync.ini

在$HOME目录下新建flysync.ini文件,示例如下:

 

参数说明:

[defaults]


install-directory=/home/flysync/replicator

同步程序安装目录

profile-script=~/.bash_profile


rmi-port=11000

rmi端口号,默认为11000

[m_kes_3114]

服务名

role=master

同步角色,源端为master,目标端为slave

master=10.10.3.199

源端服务的安装ip

members=10.10.3.199

本服务的安装ip

kufl-port=3112

KUFL端口号

replication-host=10.10.3.199

数据库ip

replication-port=54321

数据库端口

replication-user=flysync

数据库用户名

replication-password=flysync

数据库用户密码

datasource-type=kingbase

数据库类型

oracle-extractor-method=logminer

解析方式

datasource-oracle-service=test

数据库名

property=replicator.extractor.dbms.tablePatterns=realestate.*

表过滤

property=replicator.extractor.dbms.scnSegmentationThreshold=5000

是否保留DML

svc-extractor-filters=dropstatementdata

开启过滤DDL语句

注意:

replicator.extractor.dbms.tablePatterns为表过滤参数,格式为“模式名.表名”;

 

3.3 执行安装

执行解压目录/tools/下的fspm install

图片.png

更新环境配置

source ~/.bash_profile

3.4 上传license文件

上传license文件至$HOME/kfs/目录

图片.png

3.5 启动同步程序

replicator start

图片.png

3.6 查看同步服务情况

fsrepctl servicesfsrepctl statusstateonline表示服务正常

 

四、测试验证

在源端数据库执行以下sql

 Create table realestate.test(id int,name varchar(64));

 Insert into test values(1, ‘test’)

图片.png

执行kufl –service m_kes_3114 list –last查看同步解析情况

图片.png

 

五、总结

 程序常见操作命令

KFS同步程序的启停

replicator start

replicator stop

replicator restart

查看同步服务状态

fsrepctl services

fsrepctl -service 同步服务名 status

同步服务的启停

fsrepctl -service 同步服务名 online

fsrepctl -service 同步服务名 offline

重置KUFL

fsrepctl -service 同步服务名 reset  –all  –y

 

 

参考文档:

更多参见:Kingbase FlySync产品手册

 

最后修改时间:2024-12-17 17:49:28
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论