KFS 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
6、检查依赖软件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、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
查看服务状态
fsrepctl 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
--数据搬迁
loader -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.service kingbase8 -mgType 0 -clean
KFS replicator安装(Mysql-KES)的更多相关文章
- KFS replicator安装(KES-KES)
源端 一.安装前置配置 1.创建安装用户 groupadd flysync useradd flysync -g flysync -G kingbase passwd flysync 2.上传安装文件 ...
- Centos6.5下编译安装mysql 5.6
一:卸载旧版本 使用下面的命令检查是否安装有MySQL Server rpm -qa | grep mysql 有的话通过下面的命令来卸载掉 rpm -e mysql //普通删除模式 rpm -e ...
- 在Ubuntu 16.10安装mysql workbench报未安装软件包 libpng12-0错误
1.安装mysql workbench,提示未安装软件包 libpng12-0 下载了MySQL Workbench 6.3.8 在安装的时候报错: -1ubu1604-amd64.deb 提示: ...
- ubuntu安装mysql
好记性不如烂笔头,记录一下,ubuntu安装mysql的指令. 安装MySQL: sudo apt-get install mysql-server sudo apt-get install mysq ...
- Linux1 在Linux(CentOS)上安装MySql详细记录
前记: 毕业两年了,前两天换了份工作,由以前的传统行业跳到了互联网行业.之前的公司一直在用WinServer2003+Tomcat+SqlServer/Oracle这套部署环境.对于Linux+To ...
- PHP安装mysql.so扩展
在PHP中mysql_connect模块已经逐渐被弃用,我在搭建环境时也没有再安装mysql扩展,但是今天在维护一个老项目时,出现报错 Fatal error: Uncaught Error: Cal ...
- 安装MySql for Visual Studio的坑
阅读目录 问题描述 解决过程 解决方案 总结 回到顶部 问题描述 安装MySql for Visual Studio 一般来说是为了能在VS的服务器数据连接的数据源中能选择MySql类型,如下图: 但 ...
- CentOS 7 安装MySQL 5.6遇到的疑难杂症小结
在一测试服务器(CentOS Linux release 7.2.1511)上安装MySQL 5.6(5.6.19 MySQL Community Server)时遇到下面错误,这个是因为CentOS ...
- Mac上安装MySQL记录
下载最新的MySQL社区版 官方下载地址:http://dev.mysql.com/downloads/mysql/ 为了安装更方便,建议下载dmg安装包. 最新的版本是5.7.9. 安装MySQL ...
随机推荐
- react的setState到底是同步还是异步
在介绍这个问题之前,我们先来看一下一个例子: state = {number:1};componentDidMount(){this.setState({number:3})console.log(t ...
- SAP -SE30 程序运行时间分析
运行SE30 选中Program,点击Excute 点击运行 分析结果
- XSS攻击(笔记)
XSS攻击 XSS概述 XSS即跨站脚本攻击,(Cross-Site Scripting, CSS),但是为了与层叠样式表(Cascading Style Sheets, CSS)缩写区分开来,所以命 ...
- UiPath存在文本Text Exists的介绍和使用
一.Text Exists的介绍 检查是否在给定的UI元素中找到了文本,输出的是一个布尔值 二.Text Exists在UiPath中的使用 1. 打开设计器,在设计库中新建一个Sequence,为序 ...
- java请求登录接口代码示例
前言 近期研究如何利用java代码如何获取其他系统中所需的数据,自己总结的方法如下: 1.工具类代码 /** * <pre> * 方法体说明:向远程接口发起请求,返回字符串类型结果 * @ ...
- 本地使用 Docker Compose 与 Nestjs 快速构建基于 Dapr 的 Redis 发布/订阅分布式应用
Dapr(分布式应用程序运行时)介绍 Dapr 是一个可移植的.事件驱动的运行时,它使任何开发人员能够轻松构建出弹性的.无状态和有状态的应用程序,并可运行在云平台或边缘计算中,它同时也支持多种编程语言 ...
- mongodb 数据块迁移的源码分析
1. 简介 上一篇我们聊到了mongodb数据块的基本概念,和数据块迁移的主要流程,这篇文章我们聊聊源码实现部分. 2. 迁移序列图 数据块迁移的请求是从配置服务器(config server)发给( ...
- (一)java基础篇-----认识java
1.简单介绍java起源: 1995年,詹姆斯-高斯林在sun公司开发出java编程语言.到2010年,sun公司被Oracle公司收购,而詹姆斯-高斯林也离开了Oracle公司.所以,如今想要安转j ...
- fpga中的存储器
fpga中的存储器三种:RAM,ROM,FIFO. RAM和ROM已经比较熟悉了,记录一下FIFO. FIFO:first in first out ,顺序存取,先入先出.是一种数据缓存器,用来作不同 ...
- 一步一步在angular11中添加多语言支持
1.新建angular 2.添加@angular/localize ng add @angular/localize 3.设置默认locale_id,在app.module.ts中 import { ...