polardb安装部署人大金仓KFS同步程序—polardb作为源端时的安装部署
关键字:
KingbaseFlysync、KFS、replicator、同步程序、服务端、flysync.ini、安装部署、polardb、polardb安装部署KingbaseFlysync、polardb单机安装部署KFS、polardb单机安装同步程序
概述
Kingbase FlySync 支持基于 PolarDB for PostgreSQL xlogical 形式的数据同步,通过解析 PolarDB 的 xlog 来 进行数据的增量解析。下面将介绍 PolarDB 作为复制的源端进行部署的方式.
安装前准备
前置条件:已经完成polardb数据库的安装部署
2.1 环境信息
|
参数名 |
参数值 |
|
源端数据库IP地址 |
10.10.3.199 |
|
安装KFS同步程序IP地址 |
10.10.3.199 |
|
KESV8数据名 |
test |
|
Kesv8数据库监听端口号 |
5432 |
|
可用内存 |
>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

然后在KFS同步程序安装用户的环境变量中进行配置
vi ~/.bash_profile
export RUBY_HOME=ruby绝对路径
export PATH=$RUBY_HOME/bin:$PATH
source ~/.bash_profile
2.5 安装包准备
准备需要安装的Kingbase FlySync同步程序安装包和license文件。
2.6 polardb数据库准备
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

3.2 配置flysync.ini
在$HOME目录下新建flysync.ini文件,示例如下:
[defaults]
install-directory = /home/flysync/replicator
profile-script = ~/.bash_profile
rmi-port = 11000
[m_polardb]
kufl-port = 3115
datasource-type = polardb
role = master
replication-host = 127.0.0.1
replication-port = 5432
replication-user = system
replication-password = 123456
repl_auto_recovery_max_attempts = 30
repl_auto_recovery_delay_interval = 60s
repl_auto_recovery_reset_interval = 300s
repl_mode = normal
property = replicator.store.kufl.fsyncOnFlush=false
property = replicator.extractor.dbms.minRowsPerBlock=1000
property = replicator.extractor.dbms.maxLobSize=5000000
property = replicator.filter.bic.includeAllCols=false
master = localhost199
members = localhost199
polardb-dbname = test
polardb-extractor-method = xlogical
datasource-version = 11.9
参数说明:
|
[defaults] | |
|
install-directory=/home/flysync/replicator |
同步程序安装目录 |
|
profile-script=~/.bash_profile | |
|
rmi-port=11000 |
rmi端口号,默认为11000 |
|
[m_polardb] |
服务名 |
|
role=master |
同步角色,源端为master,目标端为slave |
|
master=localhost199 |
源端服务的安装ip/hostname |
|
members= localhost199 |
本服务的安装ip/hostname |
|
kufl-port=3115 |
KUFL端口号 |
|
replication-host=127.0.0.1 |
数据库ip |
|
replication-port=54321 |
数据库端口 |
|
replication-user=flysync |
数据库用户名 |
|
replication-password=flysync |
数据库用户密码 |
|
datasource-type=kingbase |
数据库类型 |
|
polar-extractor-method=xlogical |
解析方式 |
|
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

更新环境配置
source ~/.bash_profile
3.4 上传license文件
上传license文件至$HOME/kfs/目录

3.5 启动同步程序
replicator start

3.6 查看同步服务情况
fsrepctl services或fsrepctl status(state:online表示服务正常)
四、测试验证
在源端数据库执行以下sql
Create table public.test(id int,name varchar(64));
Insert into test(id,name) values(1,'test');

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

五、总结
KFS同步程序常见操作命令:
KFS同步程序的启停
replicator start
replicator stop
replicator restart
查看同步服务状态
fsrepctl services
fsrepctl -service 同步服务名 status
同步服务的启停
fsrepctl -service 同步服务名 online
fsrepctl -service 同步服务名 offline
重置KUFL
fsrepctl -service 同步服务名 reset –all –y
本文详细介绍了如何在PolarDB上部署和配置KingbaseFlySync同步程序,包括环境准备、端口管理、用户权限设置、flysync.ini配置以及测试验证过程。

6479

被折叠的 条评论
为什么被折叠?



