KingbaseFlySync replicator安装(Mysql-KES)

沉舟侧畔千帆过_ 2022-01-15 03:17:01 阅读数:860

安装 Mysql kingbaseflysync replicator mysql-kes

源端mysql

一、安装前置配置

1、创建安装用户

groupadd flysync
useradd flysync -g flysync -G mysql
passwd flysync

2、上传安装文件包和license文件到服务器/home/flysync目录下,并解压

tar -xzvf KingbaseFlySync-V001R005C002B20210524-replicator.tar.gz

3、配置将hosts文件,将源端和目标端服务器都加上去

vi /etc/hosts
192.168.100.51 mysql
192.168.100.124 kes8-2

4、配置/etc/security/limits.conf文件【可选】

vi /etc/security/limits.conf
flysync - nofile 65535
flysync - nproc 8096
mssql - nofile 65535
mssql - nproc 8096

5、开启时间同步服务【可选】

yum install ntp
systemctl start ntpd
systemctl enable ntpd

6、在/etc/sysctl.conf配置swappiness参数【可选】

vi /etc/sysctl.conf
vm.swappiness = 10
sysctl -p

7、检查依赖软件jdk和ruby【必须】

--jdk

java -version

版本小于1.8的,可以使用yum安装1.8版本

yum install java-1.8.0-openjdk.x86_64

也可以下载oracle的1.8版本的JDK包手动上传安装

--ruby

可以使用yum方式安装

yum install ruby

也可以使用KFS控制台服务器里自带的ruby包进行替换,位置在:/opt/KFS/console/media/rbenv,

将压缩包解压到/usr/local,然后配置/etc/profile文件里$PATH环境变量,将ruby的bin目录添加进去

vi /etc/profile
export PATH=$PATH:/usr/local/ruby/bin

配置完成后,使用source命令应用

vi /etc/profile
export PATH=$PATH:/usr/local/ruby/bin

二、安装

1、mysql系统参数配置

vi /etc/my.cnf
[mysqld]
character-set-server= utf8
binlog_format= ROW
default-time-zone= '+08:00'
server-id= 1
log-bin= mysql-bin

如果源端是mysql8.0以上,目标端是mysql5.7再加一行参数

[client]
default-character-set=utf8

如果源端是mysql的从库,需要再添加以下参数,确保主库的binlog日志能传送到从库:

[mysqld]
log_slave_updates=1

如果含有大数据量表时,需修改临时表空间大小限制,添加下列参数

[mysqld]
tmp_table_size=256M #临时表大小
max_heap_table_size=256M #内存表大小

保存后重启数据库

systemctl restart mysqld

2、连接帐号配置

建立帐号并给予相应的权限

mysql>CREATE USER flysync@'%' IDENTIFIED BY 'password';
mysql>GRANT ALL ON *.* TO flysync@'%' WITH GRANT OPTION;

3、配置flysync.ini文件

将示例ini文件复制到安装用户家目录下,并修改

cp /home/flysync/KingbaseFlySync-V001R006C003B20211213-replicator/flysync-replicator/samples/ini /flysync_mysql_source.ini    /home/flysync/flysync.ini
vi /etc/flysync/flysync.ini
[defaults]
# 安装目录
install-directory=~/kfsrep
# 环境变量脚本位置
profile-script=~/.bash_profile
# rmi端口,默认11000
rmi-port=11000
# 服务名
[mysql]
# 监听kufl获取的端口
kufl-port=3112
# master主机名
master=mysql
# 当前主机名
members=mysql
# 数据源类型
datasource-type=mysql
# 同步数据库信息
replication-host=192.168.100.52
replication-user=flysync
replication-password=123456
replication-port=3306
# 同步服务角色
role=master
## mysql 指定的my.cnf文件位置、bin目录、忽略mysql_dump和用户权限检测
#repl_datasource_mysql_conf=/home/ffeng/mysql-8.0.16-linux-glibc2.12-x86_64/my.cnf
#preferred_path=/home/ffeng/mysql-8.0.16-linux-glibc2.12-x86_64/bin
skip_validation_check=MySQLDumpCheck,MySQLPermissionsCheck
## 过滤器开关配置
 svc_extractor_filters=dropstatementdata,replicate
### 过滤器详细配置
## replicate 表过滤
 property=replicator.filter.replicate.do=test.*,flysync_mysql.*
# property=replicator.filter.replicate.ignore=PUBLIC.T1
## casetransform 大小写转换
# property=replicator.filter.casetransform.to_upper_case=true
## 优化参数
# 达到多少条记录后,分事务,默认 500
#property=replicator.extractor.dbms.maxRowsByBlock=500
# 若多少秒没有新的事务产生,那么就直接返回该事务,不再等待合并
#property=replicator.extractor.dbms.maxWaitingTime=2
# 大事务优化参数
property=replicator.extractor.dbms.minRowsPerBlock=4000
# 自动恢复尝试次数,系统 OFFLINE 时,尝试将系统重新置于ONLINE状态的次数
repl_auto_recovery_max_attempts=100
# 系统 OFFLINE 时,尝试 ONLINE 之前的等待时间,s(秒)、m(分钟)、h(小时)
repl_auto_recovery_delay_interval=30s
# 系统自动恢复次数重置时间,s(秒)、m(分钟)、h(小时)
repl_auto_recovery_reset_interval=300s
分离部署时,mysql bin目录还需要配置在linux的环境变量中
vi /etc/profile
export PATH=/usr/bin:$PATH
source /etc/profile

4、安装

切换到安装包目录下的tools子目录

cd /home/flysync/KingbaseFlySync-V001R005C002B20210524-replicator/tools
./fspm install

5、将license文件复制到安装目录下

cp license_8703_0.dat /home/flysync/kfsrep/license.dat

6、启动KFS

replicator start

查看KFS状态

replicator status

查看服务状态

fsrepctl status

查看KUFL列表

kufl list

 

目标端KES V8R6

一、安装前置配置

1、创建安装用户

groupadd flysync
useradd flysync -g flysync -G mysql
passwd flysync

2、上传安装文件包和license文件到服务器/home/flysync目录下,并解压

tar -xzvf KingbaseFlySync-V001R005C002B20210524-replicator.tar.gz

3、配置将hosts文件,将源端和目标端服务器都加上去

vi /etc/hosts
192.168.100.51 mysql
192.168.100.124 kes8-2

4、配置/etc/security/limits.conf文件【可选】

vi /etc/security/limits.conf
flysync - nofile 65535
flysync - nproc 8096
mssql - nofile 65535
mssql - nproc 8096

5、开启时间同步服务【可选】

yum install ntp
systemctl start ntpd
systemctl enable ntpd

6、在/etc/sysctl.conf配置swappiness参数【可选】

vi /etc/sysctl.conf
vm.swappiness = 10
sysctl -p

7、检查依赖软件jdk和ruby【必须】

--jdk

java -version

版本小于1.8的,可以使用yum安装1.8版本

yum install java-1.8.0-openjdk.x86_64

也可以下载oracle的1.8版本的JDK包手动上传安装

--ruby

可以使用yum方式安装

yum install ruby

也可以使用KFS控制台服务器里自带的ruby包进行替换,位置在:/opt/KFS/console/media/rbenv,

将压缩包解压到/usr/local,然后配置/etc/profile文件里$PATH环境变量,将ruby的bin目录添加进去

vi /etc/profile
export PATH=$PATH:/usr/local/ruby/bin

配置完成后,使用source命令应用

source /etc/profile

二、安装

1、数据库配置

创建连接数据库账号并授权:

ksql>CREATE USER FLYSYNC SUPERUSER PASSWORD 'password';

2、flysync.ini配置

[defaults]
install-directory=/home/flysync/kesrep
profile-script=~/.bash_profile
rmi-port=11000
[kingbase8]
role=slave
master=oracle11g
master-kufl-port=3112
members=kes8
kufl-port=3112
replication-host=192.168.100.114
replication-port=54321
replication-user=flysync
replication-password=123456
datasource-type=kingbase
datasource-version=8
kingbase-dbname=TEST
svc-parallelization-type=none
svc-remote-filters=casetransform,rename
property=replicator.filter.casetransform.to_upper_case=false
property=replicator.applier.dbms.optimizeRowEvents=true
property=replicator.applier.dbms.maxRowBatchSize=5000

3、从KFS安装包目录下的extensions/jdbc拷贝jdbc包

V8R3(不含)之上的版本,使用kingbase8-8.6.0.jar

V8R3(含)以下版本,使用kingbase8-8.2.0.jar

cd /home/flysync/KingbaseFlySync-V001R005C002B20210524-replicator/extensions/jdbc
cp kingbase8-8.6.0.jar /home/flysync/KingbaseFlySync-V001R005C002B20210524-replicator/flysync-replicator/lib

4、安装

cd /home/flysync/KingbaseFlySync-V001R005C002B20210524-replicator/tools
./fspm install

5、复到license文件到安装目录

cp license.dat /home/flysync/kesrep/license.dat

6、修改rename文件

vi /home/flysync/kesrep/filters-config/rename.csv
flysync_mysql,*,*,flysync_mysql8kingbase8,-,-
test1,*,*,public,-,-

——备注:如果rename里模式映射是映射到public模式的话,flysync.ini里的大小写转换参数必须为小写,即property=replicator.filter.casetransform.to_upper_case的值必须为false

7、启动并初始化

/home/flysync/kesrep/flysync/cluster-home/bin/startall
source ~/.bash_profile

查看KFS状态

replicator status

查看服务状态

replicator status

查看KUFL列表

kufl list

8、搬迁

--结构搬迁(极速模式)

ddlscan  -target.service kingbase8 -source.user flysync -source.pass 123456 -source.db test -source.dbtype mysql -source.host 192.168.100.52 -source.port 3306 -source.schema TEST -target.db test -mgType 0

--数据搬迁

ddlscan  -target.service kingbase8 -source.user flysync -source.pass 123456 -source.db test -source.dbtype mysql -source.host 192.168.100.52 -source.port 3306 -source.schema TEST -target.db test -mgType 0

版权声明:本文为[沉舟侧畔千帆过_]所创,转载请带上原文链接,感谢。 https://blog.csdn.net/arthemis_14/article/details/122215462