当前位置: 首页 > news >正文

【Kingbase FlySync】命令模式:安装部署同步软件,实现Oracle到KES实现同步

【Kingbase FlySync】命令模式:安装部署同步软件,实现Oracle到KES实现同步

  • 一.准备工作
  • 二.环境说明
  • 三.目标
  • 四.资源
    • 虚拟机
  • 五.实操
    • (1).准备安装环境
      • Orcle服务器(Oracle40)
        • 1.上传所有工具包
        • 2.操作系统配置
          • a.增加flysync 用户、设置密码
          • b.配置环境变量
          • c.调整limits.conf
          • d.hosts文件
          • e.配置hostname
          • f.授权flysync访问redo
          • g.安装ruby工具
        • 3.数据库配置
          • a.启动ORACLE监听
          • b.启动ORACLE服务,并将服务注册到监听程序
          • c.创建flysync 用户并授权
          • d.验证flysync 用户权限
          • e.oracle 密码过期处理
          • f.开启归档、开启补全日志 (建议在 MOUNT 模式下执行)。
          • g.再次查看数据库归档情况、检查补全日志的状态。
        • 4.环境检查
      • KingbaseES服务器(node2)
        • 1.上传所有工具包
        • 2.操作系统配置
          • a.增加flysync 用户、设置密码
          • b.调整limits.conf
          • c.hosts文件
          • d.配置hostname
          • e.安装ruby工具
        • 3.数据库配置
          • a.创建flysync用户
        • 4.环境检查
    • (2).部署同步程序
      • Oracle端(Oracle40)部署抽取程序
        • 1.解压安装包并拷贝license
        • 2.静默安装
          • a.创建Kingbase FlySync安装配置文件(flysync.ini)
          • b.配置flysync.ini文件
          • c.执行安装
          • d.更换license
          • f.生效环境变量
          • g.配置源端DML过滤策略
          • h.启动同步程序并置于offline 状态
          • i.查看同步软件的运行状态
      • KES端(node2)部署同步程序
        • 1.解压安装包并拷贝license
        • 2.静默安装
          • a.配置驱动包
          • b.创建Kingbase FlySync安装配置文件(flysync.ini)
          • c.配置flysync.ini文件
          • d.执行安装
          • e.更换license
          • f.生效环境变量
          • g.配置DML映射策略
            • g1.查看映射功能是否开启
            • g2.配置rename.csv
          • h.启动同步程序并置于offline 状态
          • h.查看同步软件的运行状态
    • (3).KFS存量数据搬迁
      • 1.使用ddlscan进行数据库结构搬迁
      • 2.在node2上创建oa11g0017模式
      • 3.用ddlscan极速模式/平滑模式(目标端流水线)迁移结构数据。
      • 4.用loader极速模式进行数据搬迁
    • (4).增量数据同步
      • 1.将两台服务器同步服务设置为ONLINE,开始同步数据
        • a.Oracle端(Oracle40)
        • b.KES端(node2)
      • 2.同步进程状态:查看同步是否正常
        • a.Oracle端(Oracle40)
        • b.KES端(node2)
      • 3.数据同步验证(验证DML)
        • a.在源端(Oracle)中插入数据
        • b.查看源端kufl 是否解析。
        • c.在目标端验证kufl是否解析
        • d.登录到KES数据中查询数据是否存在
  • 配置文件服务名错误解决办法

一.准备工作

  • Oracle40虚拟机还原至【优化数据库】场景。
  • node2虚拟机还原至【优化数据库】场景。

二.环境说明

  • 两台虚拟机已安装好数据库
虚拟机IP数据库软件角色操作系统版本
Oracle40192.168.40.40Oracle11g主库CenterOS7.2
node2192.168.40.112KingbaseES V8R6备库CenterOS7.2
  • 系统环境详细信息
类别源端目标端
IP192.168.40.40192.168.40.112
主机名Oracle40node2
os用户1/密码root/kingbaseroot/kingbase.123
os用户2/密码oracle/oraclekingbase/kingbase
  • 数据库环境详细信息
类别源端目标端
数据库软件Oracle11gKingbaseES V8R6
数据库名orcltest
数据库端口号152154321
数据库用户sys/oraclesystem/kingbase

三.目标

类别源端目标端
replicater安装路径/home/flysync/replicator/home/flysync/replicator
replicator rmi-port端口1100011000
replicator kufl-port端口31123112
kfs服务名oracle_sourcekingbase8_target
KFS 同步所使用的用户/密码FLYSYNC/flysyncflysync/flysync

四.资源

虚拟机

下载地址:百度网盘

五.实操

(1).准备安装环境

Orcle服务器(Oracle40)

1.上传所有工具包
[root@oracle40 ~]# mkdir /install
[root@oracle40 install]# ls -l
total 146552
-rw-r--r-- 1 root root 143069019 Nov 17 21:39 KingbaseFlySync-V002R002C004B20230320-replicator.tar.gz
-rw-r--r-- 1 root root      1396 Nov 17 21:39 license.dat
-rw-r--r-- 1 root root   6993781 Nov 17 21:38 rbenv_2.2.2_linux_x64.zip
[root@oracle40 install]# chown -R flysync:flysync /install
[root@oracle40 install]# 
2.操作系统配置
a.增加flysync 用户、设置密码
[root@oracle40 ~]# adduser flysync
[root@oracle40 ~]# usermod -G oinstall,dba flysync
[root@oracle40 ~]# echo flysync | passwd --stdin flysync
Changing password for user flysync.
passwd: all authentication tokens updated successfully.
[root@oracle40 ~]# 
b.配置环境变量

增加内容:
export ORACLE_SID=orcl
export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_1

[root@oracle40 ~]# vi /home/flysync/.bash_profile
[root@oracle40 ~]# cat /home/flysync/.bash_profile
# .bash_profile# Get the aliases and functions
if [ -f ~/.bashrc ]; then. ~/.bashrc
fi# User specific environment and startup programsPATH=$PATH:$HOME/.local/bin:$HOME/bin
export ORACLE_SID=orcl
export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_1
export PATH
[root@oracle40 ~]# source /home/flysync/.bash_profile
[root@oracle40 ~]# 
c.调整limits.conf

limits.conf
最大文件句柄数(open files)、允许创建的最大进程数量(max user processes)
新增内容:
flysync - nofile 65535
flysync - nproc 8096

[root@oracle40 ~]# vi /etc/security/limits.conf
[root@oracle40 ~]# grep flysync /etc/security/limits.conf
flysync   -  nofile  65535
flysync   -  nproc     8096
[root@oracle40 ~]# 
d.hosts文件

新增内容
192.168.40.112 node2

[root@oracle40 ~]# vi /etc/hosts
[root@oracle40 ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.40.40 oracle40
192.168.40.112 node2
[root@oracle40 ~]# 
e.配置hostname

/etc/sysconfig/network内容改为
NETWORKING = yes
HOSTNAME = oracle40

[root@oracle40 ~]# vi /etc/sysconfig/network
[root@oracle40 ~]# cat /etc/sysconfig/network
NETWORKING = yes
HOSTNAME = oracle40
[root@oracle40 ~]# 
f.授权flysync访问redo
[root@oracle40 ~]# chmod g+r,g+x /home/oracle
[root@oracle40 ~]#
g.安装ruby工具
[root@oracle40 ~]# su - flysync 
Last login: Fri Nov 17 21:45:45 CST 2023 on pts/0
[flysync@oracle40 ~]$ unzip /install/rbenv_2.2.2_linux_x64.zip -d ~/
[flysync@oracle40 ~]$ ls -l
total 4
-rwxr-xr-x 1 flysync flysync 340 Nov  4  2019 fspm
drwxrwxr-x 3 flysync flysync  17 Nov  4  2019 rbenv
[flysync@oracle40 ~]$ vi ~/.bash_profile
[flysync@oracle40 ~]$ cat ~/.bash_profile
# .bash_profile# Get the aliases and functions
if [ -f ~/.bashrc ]; then. ~/.bashrc
fi# User specific environment and startup programsPATH=$PATH:$HOME/.local/bin:$HOME/bin
export ORACLE_SID=orcl
export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_1
export RUBY_HOME=/home/flysync/rbenv/ruby
export PATH=$RUBY_HOME/bin:$PATH
export PATH
[flysync@oracle40 ~]$ source ~/.bash_profile
[flysync@oracle40 ~]$ ruby  -v
ruby 2.2.2p95 (2015-04-13 revision 50295) [x86_64-linux]
[flysync@oracle40 ~]$ 

~/.bash_profile文件增加内容:
export RUBY_HOME=/home/flysync/rbenv/ruby
export PATH=$RUBY_HOME/bin:$PATH

3.数据库配置
a.启动ORACLE监听
[flysync@oracle40 ~]$ exit
logout
[root@oracle40 ~]# su - oracle
Last login: Thu Apr 13 09:53:52 CST 2023 on pts/0
[oracle@oracle40 ~]$ lsnrctl startLSNRCTL for Linux: Version 11.2.0.4.0 - Production on 17-NOV-2023 21:57:10Copyright (c) 1991, 2013, Oracle.  All rights reserved.Starting /home/oracle/app/oracle/product/11.2.0/dbhome_1/bin/tnslsnr: please wait...TNSLSNR for Linux: Version 11.2.0.4.0 - Production
Log messages written to /home/oracle/app/oracle/product/11.2.0/dbhome_1/log/diag/tnslsnr/oracle40/listener/alert/log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracle40)(PORT=1521)))Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 11.2.0.4.0 - Production
Start Date                17-NOV-2023 21:57:10
Uptime                    0 days 0 hr. 0 min. 0 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Log File         /home/oracle/app/oracle/product/11.2.0/dbhome_1/log/diag/tnslsnr/oracle40/listener/alert/log.xml
Listening Endpoints Summary...(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracle40)(PORT=1521)))
The listener supports no services
The command completed successfully
[oracle@oracle40 ~]$ 
b.启动ORACLE服务,并将服务注册到监听程序
[oracle@oracle40 ~]$ sqlplus / as sysdbaSQL*Plus: Release 11.2.0.4.0 Production on Fri Nov 17 22:00:48 2023Copyright (c) 1982, 2013, Oracle.  All rights reserved.Connected to an idle instance.SQL> startup open
ORACLE instance started.Total System Global Area  789172224 bytes
Fixed Size		    2257392 bytes
Variable Size		  515902992 bytes
Database Buffers	  264241152 bytes
Redo Buffers		    6770688 bytes
Database mounted.
Database opened.
SQL> alter system register;System altered.SQL> 
c.创建flysync 用户并授权

SQL> CREATE USER FLYSYNC IDENTIFIED BY flysync;
User created.
SQL> GRANT CONNECT TO flysync;
Grant succeeded.
SQL> GRANT CREATE SESSION TO flysync; 
Grant succeeded.
SQL> GRANT UNLIMITED TABLESPACE TO flysync;
Grant succeeded.
SQL> GRANT CREATE TABLE TO flysync;
Grant succeeded.
SQL> GRANT EXECUTE_CATALOG_ROLE TO flysync; 
Grant succeeded.
SQL> GRANT SELECT ANY DICTIONARY TO flysync; 
Grant succeeded.
SQL> GRANT SELECT ON V_$PARAMETER TO flysync; 
Grant succeeded.
SQL>  GRANT SELECT ANY TABLE TO flysync; 
Grant succeeded.
SQL> GRANT SELECT ANY TRANSACTION TO flysync;
Grant succeeded.
SQL> 
d.验证flysync 用户权限
SQL> exit
[oracle@oracle40 ~]$ cp /install/privs.sql ~/
[oracle@oracle40 ~]$ sqlplus / as sysdbaSQL*Plus: Release 11.2.0.4.0 Production on Fri Nov 17 22:14:22 2023Copyright (c) 1982, 2013, Oracle.  All rights reserved.Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing optionsSQL> @privs.sql FLYSYNCTYPE   GRANTEE	       PRIVILEGE		      AD  TABLE_NAME			 COLUMN_NAME	 OWNER
------ --------------- ------------------------------ --- ------------------------------ --------------- --------------------
ROLE   FLYSYNC	       CONNECT			      NO  /				 /		 /
ROLE   FLYSYNC	       EXECUTE_CATALOG_ROLE	      NO  /				 /		 /
SYSTEM FLYSYNC	       CREATE SESSION		      NO  /				 /		 /
SYSTEM FLYSYNC	       CREATE TABLE		      NO  /				 /		 /
SYSTEM FLYSYNC	       SELECT ANY DICTIONARY	      NO  /				 /		 /
SYSTEM FLYSYNC	       SELECT ANY TABLE 	      NO  /				 /		 /
SYSTEM FLYSYNC	       SELECT ANY TRANSACTION	      NO  /				 /		 /
SYSTEM FLYSYNC	       UNLIMITED TABLESPACE	      NO  /				 /		 /
TABLE  FLYSYNC	       SELECT			      NO  V_$PARAMETER			 /		 SYS
9 rows selected.
SQL> 
e.oracle 密码过期处理
SQL> ALTER USER OA11G identified by oa11g ACCOUNT UNLOCK;
User altered.
f.开启归档、开启补全日志 (建议在 MOUNT 模式下执行)。
SQL> SHUTDOWN immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> STARTUP MOUNT;
ORACLE instance started.
Total System Global Area  789172224 bytes
Fixed Size		    2257392 bytes
Variable Size		  515902992 bytes
Database Buffers	  264241152 bytes
Redo Buffers		    6770688 bytes
Database mounted.
SQL> ALTER DATABASE archivelog;
Database altered.
SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;
Database altered.
SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (PRIMARY KEY) COLUMNS;
Database altered.
SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
Database altered.
SQL> ALTER DATABASE OPEN;
Database altered.
SQL> 
g.再次查看数据库归档情况、检查补全日志的状态。
SQL> SELECT log_mode FROM v$database;
LOG_MODE
------------
ARCHIVELOG
SQL> SELECT supplemental_log_data_min, supplemental_log_data_pk,supplemental_log_data_all FROM v$database;  2  
SUPPLEME SUP SUP
-------- --- ---
YES	 YES YES
SQL> 
4.环境检查
SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
[oracle@oracle40 ~]$ exit
logout
[root@oracle40 ~]# su - flysync
Last login: Fri Nov 17 21:49:13 CST 2023 on pts/0
[flysync@oracle40 ~]$ uname -n
oracle40
[flysync@oracle40 ~]$ ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 11210
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 65535
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 8096
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited
[flysync@oracle40 ~]$ hostname --ip-address
192.168.40.40
[flysync@oracle40 ~]$ ping -c 4 oracle40
PING oracle40 (192.168.40.40) 56(84) bytes of data.
64 bytes from oracle40 (192.168.40.40): icmp_seq=1 ttl=64 time=0.035 ms
64 bytes from oracle40 (192.168.40.40): icmp_seq=2 ttl=64 time=0.046 ms
64 bytes from oracle40 (192.168.40.40): icmp_seq=3 ttl=64 time=0.037 ms
64 bytes from oracle40 (192.168.40.40): icmp_seq=4 ttl=64 time=0.044 ms--- oracle40 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 2999ms
rtt min/avg/max/mdev = 0.035/0.040/0.046/0.007 ms
[flysync@oracle40 ~]$ ping -c 4 node2
PING node2 (192.168.40.112) 56(84) bytes of data.
64 bytes from node2 (192.168.40.112): icmp_seq=1 ttl=64 time=1.60 ms
64 bytes from node2 (192.168.40.112): icmp_seq=2 ttl=64 time=0.320 ms
64 bytes from node2 (192.168.40.112): icmp_seq=3 ttl=64 time=0.253 ms
64 bytes from node2 (192.168.40.112): icmp_seq=4 ttl=64 time=0.227 ms--- node2 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3001ms
rtt min/avg/max/mdev = 0.227/0.602/1.609/0.582 ms
[root@oracle40 ~]# date
Fri Nov 17 22:24:39 CST 2023
[root@oracle40 ~]# ssh root@node2 date
The authenticity of host 'node2 (192.168.40.112)' can't be established.
ECDSA key fingerprint is 03:d4:89:aa:aa:7c:e5:b4:c2:ca:09:8f:c7:63:19:a3.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'node2,192.168.40.112' (ECDSA) to the list of known hosts.
root@node2's password: 
Fri Nov 17 22:25:00 CST 2023
[root@oracle40 ~]# 

KingbaseES服务器(node2)

1.上传所有工具包
[root@node2 install]# ls -l
总用量 998884
-rw-r--r-- 1 root     root     872781824 49 2023 KingbaseES_V008R006C005B0023_Lin64_single_install.iso
-rw-r--r-- 1 root     root     143069019 1117 22:34 KingbaseFlySync-V002R002C004B20230320-replicator.tar.gz
-rw-r--r-- 1 root     root          3351 49 2023 license_12350_0_dev.dat
-rw-r--r-- 1 root     root          1396 1117 22:34 license.dat
-rw-r--r-- 1 root     root       6993781 1117 22:34 rbenv_2.2.2_linux_x64.zip
drwxrwxr-x 2 kingbase kingbase         6 49 2023 scripts
[root@node2 install]# chown -R flysync:flysync /install
[root@node2 install]# 
2.操作系统配置
a.增加flysync 用户、设置密码
[root@node2 install]# adduser flysync
[root@node2 install]# usermod -G kingbase flysync
[root@node2 install]# echo flysync |passwd --stdin flysync
更改用户 flysync 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@node2 install]# 
b.调整limits.conf

limits.conf
最大文件句柄数(open files)、允许创建的最大进程数量(max user processes)
新增内容:
flysync - nofile 65535
flysync - nproc 8096

[root@node2 install]# vi /etc/security/limits.conf
[root@node2 install]# grep flysync /etc/security/limits.conf
flysync -  nofile  65535
flysync  -  nproc 8096
[root@node2 install]# 
c.hosts文件

新增内容
192.168.40.40 oracle40
192.168.40.112 node2

[root@node2 install]# vi /etc/hosts
[root@node2 install]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6192.168.40.40 oracle40
192.168.40.112 node2
[root@node2 install]# 
d.配置hostname

/etc/sysconfig/network内容改为
NETWORKING = yes
HOSTNAME = node2

[root@node2 install]# vi /etc/sysconfig/network
[root@node2 install]# cat /etc/sysconfig/network
NETWORKING = yes
HOSTNAME = node2
[root@node2 install]# 
e.安装ruby工具
[root@node2 ~]# su - flysync 
Last login: Fri Nov 17 21:45:45 CST 2023 on pts/0
[flysync@node2 ~]$ unzip /install/rbenv_2.2.2_linux_x64.zip -d ~/
[flysync@node2 ~]$ ls -l
总用量 4
-rwxr-xr-x 1 flysync flysync 340 114 2019 fspm
drwxrwxr-x 3 flysync flysync  17 114 2019 rbenv
[flysync@node2 ~]$ 
[flysync@node2 ~]$ vi ~/.bash_profile
[flysync@node2 ~]$ cat ~/.bash_profile
# .bash_profile# Get the aliases and functions
if [ -f ~/.bashrc ]; then. ~/.bashrc
fi# User specific environment and startup programsPATH=$PATH:$HOME/.local/bin:$HOME/bin
export RUBY_HOME=/home/flysync/rbenv/ruby
export PATH=$RUBY_HOME/bin:$PATH
export PATH
[flysync@node2 ~]$ source ~/.bash_profile
[flysync@node2 ~]$ ruby  -v
ruby 2.2.2p95 (2015-04-13 revision 50295) [x86_64-linux]
[flysync@node2 ~]$ 

~/.bash_profile文件增加内容:
export RUBY_HOME=/home/flysync/rbenv/ruby
export PATH=$RUBY_HOME/bin:$PATH

3.数据库配置
a.创建flysync用户
[flysync@node2 ~]$ exit
登出
[root@node2 install]# su - kingbase
上一次登录:五 1117 21:19:58 CST 2023
[kingbase@node2 ~]$ cd /KingbaseES/V8/Server/bin/
[kingbase@node2 bin]$ ./ksql -Usystem test
ksql (V8.0)
输入 "help" 来获取帮助信息.  test=# CREATE USER flysync PASSWORD 'flysync';
CREATE ROLE
test=# GRANT ALL PRIVILEGES ON DATABASE test TO flysync ;
GRANT
test=# ALTER USER flysync SUPERUSER;
ALTER ROLE
test=# 
4.环境检查
test=# \q 
[kingbase@node2 bin]$ exit
登出
[root@node2 install]# uname -n
node2
[root@node2 install]# ulimit -a 
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 9838
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 9838
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited
[root@node2 install]# hostname --ip-address
192.168.40.112
[root@node2 install]#  ping -c 4 node2
PING node2 (192.168.40.112) 56(84) bytes of data.
64 bytes from node2 (192.168.40.112): icmp_seq=1 ttl=64 time=0.031 ms
64 bytes from node2 (192.168.40.112): icmp_seq=2 ttl=64 time=0.045 ms
64 bytes from node2 (192.168.40.112): icmp_seq=3 ttl=64 time=0.037 ms
64 bytes from node2 (192.168.40.112): icmp_seq=4 ttl=64 time=0.036 ms--- node2 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 2999ms
rtt min/avg/max/mdev = 0.031/0.037/0.045/0.006 ms
[root@node2 install]# ping -c 4 oracle40
PING oracle40 (192.168.40.40) 56(84) bytes of data.
64 bytes from oracle40 (192.168.40.40): icmp_seq=1 ttl=64 time=1.24 ms
64 bytes from oracle40 (192.168.40.40): icmp_seq=2 ttl=64 time=0.298 ms
64 bytes from oracle40 (192.168.40.40): icmp_seq=3 ttl=64 time=0.242 ms
64 bytes from oracle40 (192.168.40.40): icmp_seq=4 ttl=64 time=0.281 ms--- oracle40 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3001ms
rtt min/avg/max/mdev = 0.242/0.517/1.248/0.422 ms
[root@node2 install]# date
20231118日 星期六 00:19:27 CST
[root@node2 install]# 

(2).部署同步程序

Oracle端(Oracle40)部署抽取程序

1.解压安装包并拷贝license
[root@oracle40 ~]# su - flysync
Last login: Fri Nov 17 22:20:35 CST 2023 on pts/0
[flysync@oracle40 ~]$ mkdir /home/flysync/install
[flysync@oracle40 ~]$ cd /home/flysync/install/
[flysync@oracle40 install]$ tar -zxf /install/KingbaseFlySync-V002R002C004B20230320-replicator.tar.gz -C .
[flysync@oracle40 install]$ ls -l
total 0
drwxrwxr-x 6 flysync flysync 116 Mar 20  2023 KingbaseFlySync-V002R002C004B20230320-replicator
[flysync@oracle40 install]$ cp /install/license.dat .
[flysync@oracle40 install]$ 
2.静默安装
a.创建Kingbase FlySync安装配置文件(flysync.ini)
[flysync@oracle40 install]$ cd ~/install/KingbaseFlySync-V002R002C004B20230320-replicator/flysync-replicator/samples/ini/
[flysync@oracle40 ini]$ cp flysync_oracle-logminer_source.ini ~/flysync.ini
[flysync@oracle40 ini]$ 
b.配置flysync.ini文件
[flysync@oracle40 ini]$ vi ~/flysync.ini
[flysync@oracle40 ini]$ cat ~/flysync.ini 
[defaults]
# 安装目录
install-directory=~/replicator
# 环境变量脚本位置
profile-script=~/.bash_profile
# rmi端口,默认11000
rmi-port=11000# 服务名
[oracle_source]
# 监听kufl获取的端口
kufl-port=3112
# master主机名
master=oracle40
# 当前主机名
members=oracle40# 数据源类型
datasource-type=oracle
# 同步数据库信息
replication-host=oracle40
replication-user=FLYSYNC
replication-password=flysync
replication-port=1521# 同步服务角色
role=master## oracle 指定连接的数据库名称
datasource-oracle-service=orcl
# oracle数据库需指定此项,解析增量方式logminer
#oracle-extractor-method=logminer
oracle-extractor-method=redo## oracle-LOGMINER 同步表信息、scn号差值的阈值
property=replicator.extractor.dbms.scnSegmentationThreshold=5000## 过滤器开关配置
## dropstatementdata 不开启DDL同步
# svc_extractor_filters=dropstatementdata,replicate,casetransform,dropcolumn,rename
svc_extractor_filters=replicate
## 集群参数
# property=replicator.datasource.global.connectionSpec.use_cluster=true
# property=replicator.datasource.global.connectionSpec.slave_add=192.168.28.176,192.168.28.176
# property=replicator.datasource.global.connectionSpec.slave_port=1521,1521### 过滤器详细配置
## replicate 表过滤
property=replicator.extractor.dbms.tablePatterns=FLYSYNC.*,OA11G.*
property=replicator.filter.replicate.ignore=OA11G.tmpbak*
# property=replicator.filter.replicate.do=PUBLIC.*
# property=replicator.filter.replicate.do=PUBLIC.*,OA11G.*
# 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=0
# 系统 OFFLINE 时,尝试 ONLINE 之前的等待时间,s(秒)、m(分钟)、h(小时)
repl_auto_recovery_delay_interval=30s
# 系统自动恢复次数重置时间,s(秒)、m(分钟)、h(小时)
repl_auto_recovery_reset_interval=300s
[flysync@oracle40 ini]$ 
c.执行安装
[flysync@oracle40 ini]$ cd ~/install/KingbaseFlySync-V002R002C004B20230320-replicator/
[flysync@oracle40 KingbaseFlySync-V002R002C004B20230320-replicator]$ ./tools/fspm install
.
WARN  >> oracle40 >> ntpd is not running. It is important that configured hosts have time synchronised. (NtpdRunningCheck)
WARN  >> oracle40 >> Linux swappiness is currently set to 30, on restart it will be 0, consider setting this to 10 or under to avoid swapping. (SwappinessCheck)
.License :  /home/flysync/replicator/license.dat#####################################################################
# Next Steps
#####################################################################
Unless automatically started, you must start the FlySync services before the 
cluster will be available./home/flysync/replicator/flysync/cluster-home/bin/startallWait a minute for the services to start up and configure themselves.  After 
that you may proceed.We have added FlySync environment variables to ~/.bash_profile.
Run `source ~/.bash_profile` to rebuild your environment.Once your services start successfully replication will begin.
To look at services and perform administration, run the following command
from any database server./home/flysync/replicator/flysync/flysync-replicator/bin/fsrepctl servicesConfiguration is now complete.  For further information, please consult
FlySync documentation.NOTE  >> Command successfully completed
[flysync@oracle40 KingbaseFlySync-V002R002C004B20230320-replicator]$ 
d.更换license
[flysync@oracle40 KingbaseFlySync-V002R002C004B20230320-replicator]cp ~/install/license.dat ~/replicator/license.dat
[flysync@oracle40 KingbaseFlySync-V002R002C004B20230320-replicator]$ ls ~/replicator/
backups  filters-config  flysync  kufl  license.dat  metadata  relay  releases  service_logs  share
[flysync@oracle40 KingbaseFlySync-V002R002C004B20230320-replicator]$
f.生效环境变量
[flysync@oracle40 KingbaseFlySync-V002R002C004B20230320-replicator]$ source ~/.bash_profile
[flysync@oracle40 KingbaseFlySync-V002R002C004B20230320-replicator]$ env | grep flysync
OLDPWD=/home/flysync/install/KingbaseFlySync-V002R002C004B20230320-replicator
USER=flysync
KINGBASE_ROOT=/home/flysync/replicator
MAIL=/var/spool/mail/flysync
PATH=/home/flysync/rbenv/ruby/bin:/home/flysync/rbenv/ruby/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/flysync/.local/bin:/home/flysync/bin:/home/flysync/.local/bin:/home/flysync/bin:/home/flysync/replicator/flysync/flysync-manager/bin:/home/flysync/replicator/flysync/flysync-replicator/bin:/home/flysync/replicator/flysync/cluster-home/bin:/home/flysync/replicator/flysync/flysync-connector/bin:/home/flysync/replicator/share:/home/flysync/replicator/flysync/tools:/home/flysync/replicator/flysync/console/bin
PWD=/home/flysync/install/KingbaseFlySync-V002R002C004B20230320-replicator
RUBY_HOME=/home/flysync/rbenv/ruby
HOME=/home/flysync
LOGNAME=flysync
[flysync@oracle40 KingbaseFlySync-V002R002C004B20230320-replicator]$ 
g.配置源端DML过滤策略
[flysync@oracle40 KingbaseFlySync-V002R002C004B20230320-replicator]$  vi ~/flysync.ini
[flysync@oracle40 KingbaseFlySync-V002R002C004B20230320-replicator]$  cat ~/flysync.ini | grep -E "svc_extractor_filters|replicate.do"
# svc_extractor_filters=dropstatementdata,replicate,casetransform,dropcolumn,rename
svc_extractor_filters=replicate
# property=replicator.filter.replicate.do=PUBLIC.*
# property=replicator.filter.replicate.do=PUBLIC.*,OA11G.*
[flysync@oracle40 KingbaseFlySync-V002R002C004B20230320-replicator]$ 
h.启动同步程序并置于offline 状态
[flysync@oracle40 KingbaseFlySync-V002R002C004B20230320-replicator]$ replicator  start offline
Starting FlySync Replicator Service...
Waiting for FlySync Replicator Service......
running: PID:28852
[flysync@oracle40 KingbaseFlySync-V002R002C004B20230320-replicator]$ 
i.查看同步软件的运行状态
[flysync@oracle40 KingbaseFlySync-V002R002C004B20230320-replicator]$ fsrepctl -service oracle_source services
Processing services command...
NAME              VALUE
----              -----
appliedLastSeqno: -1
appliedLatency  : -1.0
role            : master
serviceName     : oracle_source
serviceType     : local
started         : true
state           : OFFLINE:NORMAL
Finished services command...
[flysync@oracle40 KingbaseFlySync-V002R002C004B20230320-replicator]$

KES端(node2)部署同步程序

1.解压安装包并拷贝license
[root@node2 ~]#  su - flysync
上一次登录:五 1117 22:50:12 CST 2023pts/0 上
[flysync@node2 ~]$ mkdir /home/flysync/install
[flysync@node2 ~]$ cd /home/flysync/install/
[flysync@node2 install]$ tar -zxf /install/KingbaseFlySync-V002R002C004B20230320-replicator.tar.gz -C .
[flysync@node2 install]$ ls -l
总用量 0
drwxrwxr-x 6 flysync flysync 116 320 2023 KingbaseFlySync-V002R002C004B20230320-replicator
[flysync@node2 install]$ cp /install/license.dat .
[flysync@node2 install]$ 
2.静默安装
a.配置驱动包
[flysync@node2 install]$ cd KingbaseFlySync-V002R002C004B20230320-replicator/flysync-replicator/lib
[flysync@node2 lib]$ cp ~/install/KingbaseFlySync-V002R002C004B20230320-replicator/extensions/jdbc/kingbase8-8.6.0.jar .
[flysync@node2 lib]$ ls -l kingbase8-8.6.0.jar
-rw-rw-r-- 1 flysync flysync 1019069 1118 11:33 kingbase8-8.6.0.jar
[flysync@node2 lib]$
b.创建Kingbase FlySync安装配置文件(flysync.ini)

[flysync@node2 ini]$ cp flysync_kingbase8_target.ini ~/flysync.ini
[flysync@node2 ini]$
c.配置flysync.ini文件
[flysync@node2 ini]$cd ~/install/KingbaseFlySync-V002R002C004B20230320-replicator/flysync-replicator/samples/ini/
[flysync@node2 ini]$ vi ~/flysync.ini
[flysync@node2 ini]$ cat ~/flysync.ini 
[defaults]
# 安装目录
install-directory=~/replicator
# 环境变量脚本位置
profile-script=~/.bash_profile
# rmi端口,默认11000
rmi-port=11000# 服务名
[kingbase8_target]
# 监听kufl获取的端口
kufl-port=3112
# master主机名
master=oracle40
# 当前主机名
members=node2##指定连接master监听的kufl端口
master-kufl-port=3112# 数据源类型
datasource-type=kingbase
# 同步数据库信息
replication-host=node2
replication-user=flysync
replication-password=flysync
replication-port=54321# 同步服务角色
role=slave## 指定连接的数据库名称
kingbase-dbname=test## kingbase 版本号
datasource-version=8## 过滤器开关配置
svc-remote-filters=rename
# svc-remote-filters=casetransform,dropcolumn,rename## 集群参数
# property=replicator.datasource.global.connectionSpec.use_cluster=true
# property=replicator.datasource.global.connectionSpec.slave_add=192.168.28.176,192.168.28.176
# property=replicator.datasource.global.connectionSpec.slave_port=1521,1521### 过滤器详细配置
## replicate 表过滤
# property=replicator.filter.replicate.do=PUBLIC.*
# property=replicator.filter.replicate.ignore=PUBLIC.T1
## casetransform 大小写转换
# property=replicator.filter.casetransform.to_upper_case=true## 优化参数
# 开启小事务合并入库
property=replicator.applier.dbms.optimizeRowEvents=true
# 指定单表一次入库的数据量
property=replicator.applier.dbms.maxRowBatchSize=5000# 自动恢复尝试次数,系统 OFFLINE 时,尝试将系统重新置于ONLINE状态的次数
repl_auto_recovery_max_attempts=0
# 系统 OFFLINE 时,尝试 ONLINE 之前的等待时间,s(秒)、m(分钟)、h(小时)
repl_auto_recovery_delay_interval=30s
# 系统自动恢复次数重置时间,s(秒)、m(分钟)、h(小时)
repl_auto_recovery_reset_interval=300s
[flysync@node2 ini]$ 
d.执行安装
[flysync@node2 ini]$ cd ~/install/KingbaseFlySync-V002R002C004B20230320-replicator/
[flysync@node2 KingbaseFlySync-V002R002C004B20230320-replicator]$ ./tools/fspm install
..
WARN  >> node2 >> ntpd is not running. It is important that configured hosts have time synchronised. (NtpdRunningCheck)
WARN  >> node2 >> Linux swappiness is currently set to 30, on restart it will be 0, consider setting this to 10 or under to avoid swapping. (SwappinessCheck)
..License :  /home/flysync/replicator/license.dat#####################################################################
# Next Steps
#####################################################################
Unless automatically started, you must start the FlySync services before the 
cluster will be available./home/flysync/replicator/flysync/cluster-home/bin/startallWait a minute for the services to start up and configure themselves.  After 
that you may proceed.We have added FlySync environment variables to ~/.bash_profile.
Run `source ~/.bash_profile` to rebuild your environment.Once your services start successfully replication will begin.
To look at services and perform administration, run the following command
from any database server./home/flysync/replicator/flysync/flysync-replicator/bin/fsrepctl servicesConfiguration is now complete.  For further information, please consult
FlySync documentation.NOTE  >> Command successfully completed
[flysync@node2 KingbaseFlySync-V002R002C004B20230320-replicator]$ 
e.更换license
[flysync@node2 KingbaseFlySync-V002R002C004B20230320-replicator]$ cp ~/install/license.dat ~/replicator/license.dat
[flysync@node2 KingbaseFlySync-V002R002C004B20230320-replicator]$ ls ~/replicator/
backups  filters-config  flysync  kufl  license.dat  metadata  relay  releases  service_logs  share
[flysync@node2 KingbaseFlySync-V002R002C004B20230320-replicator]$ 
f.生效环境变量
[flysync@node2 KingbaseFlySync-V002R002C004B20230320-replicator]$ source ~/.bash_profile
[flysync@node2 KingbaseFlySync-V002R002C004B20230320-replicator]$ env | grep flysync
OLDPWD=/home/flysync/install/KingbaseFlySync-V002R002C004B20230320-replicator/flysync-replicator/samples/ini
USER=flysync
KINGBASE_ROOT=/home/flysync/replicator
MAIL=/var/spool/mail/flysync
PATH=/home/flysync/rbenv/ruby/bin:/home/flysync/rbenv/ruby/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/flysync/.local/bin:/home/flysync/bin:/home/flysync/.local/bin:/home/flysync/bin:/home/flysync/replicator/flysync/flysync-manager/bin:/home/flysync/replicator/flysync/flysync-replicator/bin:/home/flysync/replicator/flysync/cluster-home/bin:/home/flysync/replicator/flysync/flysync-connector/bin:/home/flysync/replicator/share:/home/flysync/replicator/flysync/tools:/home/flysync/replicator/flysync/console/bin
PWD=/home/flysync/install/KingbaseFlySync-V002R002C004B20230320-replicator
RUBY_HOME=/home/flysync/rbenv/ruby
HOME=/home/flysync
LOGNAME=flysync
[flysync@node2 KingbaseFlySync-V002R002C004B20230320-replicator]$ 
g.配置DML映射策略
g1.查看映射功能是否开启
[flysync@node2 KingbaseFlySync-V002R002C004B20230320-replicator]$ cat ~/flysync.ini | grep -E "svc-remote-filters"
svc-remote-filters=rename
# svc-remote-filters=casetransform,dropcolumn,rename
[flysync@node2 KingbaseFlySync-V002R002C004B20230320-replicator]$ 

svc-remote-filters=rename 没被注释证明映射开启了

g2.配置rename.csv
  • 将OA11G模式下的增量数据映射到oa11g0017下。
  • 将OA11G.EMP 表的增量数据映射到 oa11g0017.emp0017 下
[flysync@node2 KingbaseFlySync-V002R002C004B20230320-replicator]$ vi ~/replicator/filters-config/rename.csv
[flysync@node2 KingbaseFlySync-V002R002C004B20230320-replicator]$ tail -8 ~/replicator/filters-config/rename.csvOA11G,*,*,oa11g0017,-,-
OA11G,EMP,*,oa11g0017,emp0017,-
FLYSYNC,trep_commit_seqno,*,flysync_kingbase8_target,-,-
FLYSYNC,consistency,*,flysync_kingbase8_target,-,-
FLYSYNC,heartbeat,*,flysync_kingbase8_target,-,-
FLYSYNC,trep_shard,*,flysync_kingbase8_target,-,-
FLYSYNC,trep_shard_channel,*,flysync_kingbase8_target,-,-
[flysync@node2 KingbaseFlySync-V002R002C004B20230320-replicator]$ 
h.启动同步程序并置于offline 状态
[flysync@node2 KingbaseFlySync-V002R002C004B20230320-replicator]$ replicator  start offline
Starting FlySync Replicator Service...
Waiting for FlySync Replicator Service......
running: PID:7693
[flysync@node2 KingbaseFlySync-V002R002C004B20230320-replicator]$ 
h.查看同步软件的运行状态
[flysync@node2 KingbaseFlySync-V002R002C004B20230320-replicator]$ fsrepctl -service kingbase8_target services
Processing services command...
NAME              VALUE
----              -----
appliedLastSeqno: -1
appliedLatency  : -1.0
role            : slave
serviceName     : kingbase_target
serviceType     : local
started         : true
state           : OFFLINE:NORMAL
Finished services command...
[flysync@node2 KingbaseFlySync-V002R002C004B20230320-replicator]$ 

(3).KFS存量数据搬迁

1.使用ddlscan进行数据库结构搬迁

检查replicator状态。确保同步进程处于【OFFLINE:NORMAL】状态。

  • Oracle端(oracle40)
[flysync@oracle40 ~]$ fsrepctl -service oracle_soure services
Processing services command...
NAME              VALUE
----              -----
appliedLastSeqno: -1
appliedLatency  : -1.0
role            : master
serviceName     : oracle_source
serviceType     : local
started         : true
state           : OFFLINE:NORMAL
Finished services command...
[flysync@oracle40 ~]$ 
  • KES端(node2)
[flysync@node2 ~]$ fsrepctl -service kingbase8_target services
Processing services command...
NAME              VALUE
----              -----
appliedLastSeqno: -1
appliedLatency  : -1.0
role            : slave
serviceName     : kingbase_target
serviceType     : local
started         : true
state           : OFFLINE:NORMAL
Finished services command...
[flysync@node2 ~]$ 

2.在node2上创建oa11g0017模式

[root@node2 ~]# su - kingbase
上一次登录:六 1118 09:34:24 CST 2023
[kingbase@node2 ~]$ cd /KingbaseES/V8/Server/bin/
[kingbase@node2 bin]$ ./ksql -U flysync -d test
ksql (V8.0)
输入 "help" 来获取帮助信息.test=#  CREATE SCHEMA oa11g0017;
CREATE SCHEMA
test=# 

3.用ddlscan极速模式/平滑模式(目标端流水线)迁移结构数据。

使用命令

ddlscan -target.service kingbase8_target -source.user FLYSYNC -source.pass flysync -source.db orcl -source.dbtype oracle -source.host oracle40 -source.port 1521 -source.schema OA11G -target.db test -mgType 0

结果如下:

[flysync@node2 KingbaseFlySync-V002R002C004B20230320-replicator]$ ddlscan -target.service kingbase8_target -source.user FLYSYNC -source.pass flysync -source.db orcl -source.dbtype oracle -source.host oracle40 -source.port 1521 -source.schema OA11G -target.db test -mgType 0| [ - main] INFO  ddlscan.DDLScanWorker Tables or TableFile not specified - extracting everything!| [ - main] INFO  ddlscan.DDLScanWorker Connect to source database with url: jdbc:oracle:thin:@//oracle40:1521/orcl| [ - main] INFO  database.AbstractDatabase Loading database driver: oracle.jdbc.driver.OracleDriver| [ - main] INFO  database.AbstractDatabase Loading database driver: com.kingbase8.Driver| [ - main] INFO  filter.RenameDefinitions Parsing /home/flysync/replicator/flysync/flysync-replicator/support/filters-config/rename.csv:| [ - main] INFO  filter.RenameDefinitions schemac.*.* -> schemac1.-.-| [ - main] INFO  filter.RenameDefinitions schemac.tablew.* -> schemac2.-.-| [ - main] INFO  filter.RenameDefinitions schemav.tablee.* -> schemav1.tableee.-| [ - main] INFO  filter.RenameDefinitions schemab.tabler.* -> -.tabler1.-| [ - main] INFO  filter.RenameDefinitions *.tablet.* -> -.tablet1.-| [ - main] INFO  filter.RenameDefinitions schemaz.tableq.cola -> -.-.colaa| [ - main] INFO  filter.RenameDefinitions *.tablew.colb -> -.-.colbb| [ - main] INFO  filter.RenameDefinitions *.*.colc -> -.-.colcc| [ - main] INFO  filter.RenameDefinitions schemax.*.cold -> -.-.coldd| [ - main] INFO  filter.RenameDefinitions scheman.*.* -> scheman2.-.-| [ - main] INFO  filter.RenameDefinitions scheman.tabley.* -> -.tabley2.-| [ - main] INFO  filter.RenameDefinitions scheman.tabley.colj -> -.-.colj2| [ - main] INFO  filter.RenameDefinitions scheman.tabley.colk -> -.-.colk2| [ - main] INFO  filter.RenameDefinitions schemam.*.* -> schemam2.-.-| [ - main] INFO  filter.RenameDefinitions schemam.tableu.* -> schemam2.tableu2.-| [ - main] INFO  filter.RenameDefinitions schemam.tableu.colj -> -.-.colj2| [ - main] INFO  filter.RenameDefinitions OA11G.*.* -> oa11g0017.-.-| [ - main] INFO  filter.RenameDefinitions OA11G.EMP.* -> oa11g0017.emp0017.-| [ - main] INFO  filter.RenameDefinitions FLYSYNC.trep_commit_seqno.* -> flysync_kingbase8_target.-.-| [ - main] INFO  filter.RenameDefinitions FLYSYNC.consistency.* -> flysync_kingbase8_target.-.-| [ - main] INFO  filter.RenameDefinitions FLYSYNC.heartbeat.* -> flysync_kingbase8_target.-.-| [ - main] INFO  filter.RenameDefinitions FLYSYNC.trep_shard.* -> flysync_kingbase8_target.-.-| [ - main] INFO  filter.RenameDefinitions FLYSYNC.trep_shard_channel.* -> flysync_kingbase8_target.-.-| [ - main] INFO  ddlscan.DDLScanWorker There is 12 tables to migration.| [ - main] INFO  ddlscan.TargetDDLScanWorker Connect to target database with url: jdbc:kingbase8://node2:54321/test| [ - main] INFO  ddlscan.TargetDDLScanWorker Drop tables on target database.| [ - main] INFO  ddlscan.DDLScanCtrl 
--------------------------------------------------------------------------------
TOTAL:             12
SUCCESS:           12
FAILURE:           0
TOTAL TIME:        2s
FINISHED AT:       2023-11-18 12:50:06
OUT:               /tmp/ddlscan_20231118_125004.sql
ERROR:             
+-----+--------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------+--------+----------------------------------------+
|NUM  |SOURCE_TABLE                                                                                                                    |TARGET_TABLE                                                                                                                    |STATUS  |MESSAGE                                 |
+-----+--------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------+--------+----------------------------------------+
|1    |OA11G.COUNTRIES                                                                                                                 |oa11g0017.COUNTRIES                                                                                                             |Success |                                        |
|2    |OA11G.DEPARTMENTS                                                                                                               |oa11g0017.DEPARTMENTS                                                                                                           |Success |                                        |
|3    |OA11G.DEPT                                                                                                                      |oa11g0017.DEPT                                                                                                                  |Success |                                        |
|4    |OA11G.EMP                                                                                                                       |oa11g0017.emp0017                                                                                                               |Success |                                        |
|5    |OA11G.EMPLOYEES                                                                                                                 |oa11g0017.EMPLOYEES                                                                                                             |Success |                                        |
|6    |OA11G.JOBS                                                                                                                      |oa11g0017.JOBS                                                                                                                  |Success |                                        |
|7    |OA11G.JOB_HISTORY                                                                                                               |oa11g0017.JOB_HISTORY                                                                                                           |Success |                                        |
|8    |OA11G.LOCATIONS                                                                                                                 |oa11g0017.LOCATIONS                                                                                                             |Success |                                        |
|9    |OA11G.MLOG$_EMP                                                                                                                 |oa11g0017.MLOG$_EMP                                                                                                             |Success |                                        |
|10   |OA11G.REGIONS                                                                                                                   |oa11g0017.REGIONS                                                                                                               |Success |                                        |
|11   |OA11G.RUPD$_EMP                                                                                                                 |oa11g0017.RUPD$_EMP                                                                                                             |Success |                                        |
|12   |OA11G.SALGRADE                                                                                                                  |oa11g0017.SALGRADE                                                                                                              |Success |                                        |
+-----+--------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------+--------+----------------------------------------+[flysync@node2 KingbaseFlySync-V002R002C004B20230320-replicator]$ 

4.用loader极速模式进行数据搬迁

使用命令:

 loader -source.service oracle_source -source.user FLYSYNC -source.pass flysync \
-source.db orcl -source.dbtype oracle -source.host oracle40 \
-source.port 1521 -source.schema OA11G \
-source.rmiHost oracle40 -source.rmiPort 11000 \
-target.rmiHost node2 -target.rmiPort 11000 \
-target.service kingbase8_target -mgType 0 -clean

结果如下:

[flysync@node2 KingbaseFlySync-V002R002C004B20230320-replicator]$ loader -source.service oracle_source -source.user FLYSYNC -source.pass flysync \
> -source.db orcl -source.dbtype oracle -source.host oracle40 \
> -source.port 1521 -source.schema OA11G \
> -source.rmiHost oracle40 -source.rmiPort 11000 \
> -target.rmiHost node2 -target.rmiPort 11000 \
> -target.service kingbase8_target -mgType 0 -clean| [ - main] INFO  database.AbstractDatabase Loading database driver: oracle.jdbc.driver.OracleDriver| [ - main] INFO  database.AbstractDatabase Loading database driver: com.kingbase8.Driver| [ - main] INFO  loader.LoaderWorker Tables not specified - extracting everything!| [ - main] INFO  loader.LoaderWorker Import table OA11G.COUNTRIES| [ - main] INFO  loader.LoaderWorker Import table OA11G.DEPARTMENTS| [ - main] INFO  loader.LoaderWorker Import table OA11G.DEPT| [ - main] INFO  loader.LoaderWorker Import table OA11G.EMP| [ - main] INFO  loader.LoaderWorker Import table OA11G.EMPLOYEES| [ - main] INFO  loader.LoaderWorker Import table OA11G.JOBS| [ - main] INFO  loader.LoaderWorker Import table OA11G.JOB_HISTORY| [ - main] INFO  loader.LoaderWorker Import table OA11G.LOCATIONS| [ - main] INFO  loader.LoaderWorker Import table OA11G.MLOG$_EMP| [ - main] INFO  loader.LoaderWorker Import table OA11G.REGIONS| [ - main] INFO  loader.LoaderWorker Import table OA11G.RUPD$_EMP| [ - main] INFO  loader.LoaderWorker Import table OA11G.SALGRADE| [ - main] INFO  conf.ReplicatorRuntime Replicator role: slave| [kingbase8_target - main] INFO  conf.ReplicatorRuntime Setting consistencyFailureStop to true| [kingbase8_target - main] INFO  conf.ReplicatorRuntime Setting consistencyCheckColumnNames to true| [kingbase8_target - main] INFO  conf.ReplicatorRuntime Setting consistencyCheckColumnTypes to true| [kingbase8_target - main] INFO  conf.ReplicatorRuntime Setting applierFailurePolicy to warn| [kingbase8_target - main] INFO  conf.ReplicatorRuntime Setting applierFailurePolicy to warn| [kingbase8_target - main] INFO  conf.ReplicatorRuntime Setting replicator.applier.failOnZeroRowUpdate to warn| [kingbase8_target - main] INFO  pipeline.Pipeline Configuring pipeline: slave| [kingbase8_target - main] INFO  datasource.DataSourceService Configuring data source: name=global| [kingbase8_target - main] INFO  datasource.DataSourceManager Loading data source: name=global className=com.kingbase.flysync.replicator.datasource.KingbaseDataSource| [kingbase8_target - main] INFO  datasource.AbstractDataSource No cvsType provided; using default settings| [kingbase8_target - main] INFO  datasource.AbstractDataSource Checking CSV formatter class: com.kingbase.flysync.replicator.csv.DefaultCsvDataFormat| [kingbase8_target - main] INFO  datasource.DataSourceService Configuring data source: name=extractor| [kingbase8_target - main] INFO  datasource.DataSourceManager Loading data source: name=extractor className=com.kingbase.flysync.replicator.datasource.AliasDataSource| [kingbase8_target - main] INFO  datasource.DataSourceService Configuring data source: name=file_metadata| [kingbase8_target - main] INFO  datasource.DataSourceManager Loading data source: name=file_metadata className=com.kingbase.flysync.replicator.datasource.FileDataSource| [kingbase8_target - main] INFO  datasource.AbstractDataSource No cvsType provided; using default settings| [kingbase8_target - main] INFO  datasource.AbstractDataSource Checking CSV formatter class: com.kingbase.flysync.replicator.csv.DefaultCsvDataFormat| [kingbase8_target - main] INFO  pipeline.StageTaskGroup Instantiating and configuring tasks for stage: loader-to-q| [kingbase8_target - main] INFO  extractor.ExtractorWrapper Configuring raw extractor and heartbeat filter| [kingbase8_target - main] INFO  event.EventMetadataFilter Use default schema for unknown SQL statements: false| [kingbase8_target - main] INFO  extractor.ExtractorWrapper Master auto-repositioning on source_id change is enabled; extractor will reposition current log position if last extracted source_id differs from current source_id| [kingbase8_target - main] INFO  pipeline.StageTaskGroup Instantiating and configuring tasks for stage: q-to-dbms| [kingbase8_target - main] INFO  conf.ReplicatorRuntime Preparing pipeline for use: slave| [kingbase8_target - main] INFO  pipeline.Pipeline Preparing pipeline: slave| [kingbase8_target - main] INFO  datasource.DataSourceService Preparing and initializing data source: name=file_metadata| [kingbase8_target - main] INFO  datasource.FileDataSource Service directory does not exist, creating: /home/flysync/replicator/metadata/applier/kingbase8_target| [kingbase8_target - main] INFO  datasource.FileDataSource Initializing data source files: service=kingbase8_target directory=/home/flysync/replicator/metadata/applier| [kingbase8_target - main] INFO  datasource.FileCommitSeqno Initializing file-based seqno tracking: directory=/home/flysync/replicator/metadata/applier/kingbase8_target file=commitseqno.0| [kingbase8_target - pool-1-thread-1] INFO  pipeline.DeferredShutdownTask Waiting for pipeline to shut down: slave| [kingbase8_target - main] INFO  datasource.FileCommitSeqno Validated that trep_commit_seqno file count matches channels: files=1 channels=1| [kingbase8_target - main] INFO  datasource.DataSourceService Preparing and initializing data source: name=global| [kingbase8_target - main] INFO  datasource.DataSourceService Setting catalog handling for privileged slave/relay: name=global| [kingbase8_target - main] INFO  datasource.DataSourceService Disabling logging of updates for slave/relay: name=global| [kingbase8_target - main] INFO  pipeline.StageTaskGroup Preparing tasks for stage: q-to-dbms| [kingbase8_target - main] INFO  filter.RenameDefinitions Parsing /home/flysync/replicator/flysync/flysync-replicator/support/filters-config/rename.csv:| [kingbase8_target - main] INFO  filter.RenameDefinitions schemac.*.* -> schemac1.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemac.tablew.* -> schemac2.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemav.tablee.* -> schemav1.tableee.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemab.tabler.* -> -.tabler1.-| [kingbase8_target - main] INFO  filter.RenameDefinitions *.tablet.* -> -.tablet1.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemaz.tableq.cola -> -.-.colaa| [kingbase8_target - main] INFO  filter.RenameDefinitions *.tablew.colb -> -.-.colbb| [kingbase8_target - main] INFO  filter.RenameDefinitions *.*.colc -> -.-.colcc| [kingbase8_target - main] INFO  filter.RenameDefinitions schemax.*.cold -> -.-.coldd| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.*.* -> scheman2.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.tabley.* -> -.tabley2.-| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.tabley.colj -> -.-.colj2| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.tabley.colk -> -.-.colk2| [kingbase8_target - main] INFO  filter.RenameDefinitions schemam.*.* -> schemam2.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemam.tableu.* -> schemam2.tableu2.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemam.tableu.colj -> -.-.colj2| [kingbase8_target - main] INFO  filter.RenameDefinitions OA11G.*.* -> oa11g0017.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions OA11G.EMP.* -> oa11g0017.emp0017.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.trep_commit_seqno.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.consistency.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.heartbeat.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.trep_shard.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.trep_shard_channel.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  applier.JdbcApplier Connecting to data source| [kingbase8_target - main] INFO  applier.JdbcApplier Suppressing logging on privileged slave| [kingbase8_target - main] WARN  pipeline.StageTaskGroup [main-q-to-dbms-0] Last event data not available; Setting extractor to current position| [kingbase8_target - main] INFO  pipeline.StageTaskGroup Preparing tasks for stage: loader-to-q| [kingbase8_target - main] INFO  extractor.ExtractorWrapper Preparing raw extractor and heartbeat filter| [kingbase8_target - main] WARN  pipeline.StageTaskGroup [main-loader-to-q-0] Last event data not available; Setting extractor to current position| [kingbase8_target - main] INFO  pipeline.Pipeline Starting pipeline: slave| [kingbase8_target - main-loader-to-q-0] INFO  pipeline.SingleThreadStageTask Starting stage task thread| [kingbase8_target - main-q-to-dbms-0] INFO  pipeline.SingleThreadStageTask Starting stage task thread| [kingbase8_target - main-loader-to-q-0] INFO  pipeline.SingleThreadStageTask Task has been cancelled| [kingbase8_target - main-loader-to-q-0] INFO  pipeline.SingleThreadStageTask Terminating processing for stage task thread| [kingbase8_target - main-loader-to-q-0] INFO  pipeline.SingleThreadStageTask Last successfully processed event prior to termination: seqno=12 eventid=NIL| [kingbase8_target - main-loader-to-q-0] INFO  pipeline.SingleThreadStageTask Task event count: 13| [kingbase8_target - main-q-to-dbms-0] INFO  pipeline.SingleThreadStageTask Task has been cancelled| [kingbase8_target - main-q-to-dbms-0] INFO  pipeline.SingleThreadStageTask Terminating processing for stage task thread| [kingbase8_target - main-q-to-dbms-0] INFO  pipeline.SingleThreadStageTask Last successfully processed event prior to termination: seqno=12 eventid=NIL| [kingbase8_target - main-q-to-dbms-0] INFO  pipeline.SingleThreadStageTask Task event count: 13| [kingbase8_target - pool-1-thread-1] INFO  pipeline.DeferredShutdownTask Pipeline has shut down, dispatching offline event: slave| [kingbase8_target - main] INFO  pipeline.Pipeline Shutting down pipeline: slave| [kingbase8_target - main] INFO  pipeline.Pipeline Releasing pipeline: slave| [kingbase8_target - main] INFO  pipeline.StageTaskGroup Releasing tasks for stage: loader-to-q| [kingbase8_target - main] INFO  extractor.ExtractorWrapper Releasing raw extractor and heartbeat filter| [kingbase8_target - main] INFO  pipeline.StageTaskGroup Releasing tasks for stage: q-to-dbms| [kingbase8_target - main] INFO  conf.ReplicatorRuntime Replicator role: slave| [kingbase8_target - main] INFO  conf.ReplicatorRuntime Setting consistencyFailureStop to true| [kingbase8_target - main] INFO  conf.ReplicatorRuntime Setting consistencyCheckColumnNames to true| [kingbase8_target - main] INFO  conf.ReplicatorRuntime Setting consistencyCheckColumnTypes to true| [kingbase8_target - main] INFO  conf.ReplicatorRuntime Setting applierFailurePolicy to warn| [kingbase8_target - main] INFO  conf.ReplicatorRuntime Setting applierFailurePolicy to warn| [kingbase8_target - main] INFO  conf.ReplicatorRuntime Setting replicator.applier.failOnZeroRowUpdate to warn| [kingbase8_target - main] INFO  pipeline.Pipeline Configuring pipeline: slave| [kingbase8_target - main] INFO  datasource.DataSourceService Configuring data source: name=global| [kingbase8_target - main] INFO  datasource.DataSourceManager Loading data source: name=global className=com.kingbase.flysync.replicator.datasource.KingbaseDataSource| [kingbase8_target - main] INFO  datasource.AbstractDataSource No cvsType provided; using default settings| [kingbase8_target - main] INFO  datasource.AbstractDataSource Checking CSV formatter class: com.kingbase.flysync.replicator.csv.DefaultCsvDataFormat| [kingbase8_target - main] INFO  datasource.DataSourceService Configuring data source: name=extractor| [kingbase8_target - main] INFO  datasource.DataSourceManager Loading data source: name=extractor className=com.kingbase.flysync.replicator.datasource.AliasDataSource| [kingbase8_target - main] INFO  datasource.DataSourceService Configuring data source: name=file_metadata| [kingbase8_target - main] INFO  datasource.DataSourceManager Loading data source: name=file_metadata className=com.kingbase.flysync.replicator.datasource.FileDataSource| [kingbase8_target - main] INFO  datasource.AbstractDataSource No cvsType provided; using default settings| [kingbase8_target - main] INFO  datasource.AbstractDataSource Checking CSV formatter class: com.kingbase.flysync.replicator.csv.DefaultCsvDataFormat| [kingbase8_target - main] INFO  pipeline.StageTaskGroup Instantiating and configuring tasks for stage: loader-to-q| [kingbase8_target - main] INFO  extractor.ExtractorWrapper Configuring raw extractor and heartbeat filter| [kingbase8_target - main] INFO  event.EventMetadataFilter Use default schema for unknown SQL statements: false| [kingbase8_target - main] INFO  extractor.ExtractorWrapper Master auto-repositioning on source_id change is enabled; extractor will reposition current log position if last extracted source_id differs from current source_id| [kingbase8_target - main] INFO  pipeline.StageTaskGroup Instantiating and configuring tasks for stage: q-to-dbms| [kingbase8_target - main] INFO  conf.ReplicatorRuntime Preparing pipeline for use: slave| [kingbase8_target - main] INFO  pipeline.Pipeline Preparing pipeline: slave| [kingbase8_target - main] INFO  datasource.DataSourceService Preparing and initializing data source: name=file_metadata| [kingbase8_target - main] INFO  datasource.FileDataSource Initializing data source files: service=kingbase8_target directory=/home/flysync/replicator/metadata/applier| [kingbase8_target - main] INFO  datasource.FileCommitSeqno Validated that trep_commit_seqno file count matches channels: files=1 channels=1| [kingbase8_target - main] INFO  datasource.DataSourceService Preparing and initializing data source: name=global| [kingbase8_target - main] INFO  datasource.DataSourceService Setting catalog handling for privileged slave/relay: name=global| [kingbase8_target - main] INFO  datasource.DataSourceService Disabling logging of updates for slave/relay: name=global| [kingbase8_target - pool-5-thread-1] INFO  pipeline.DeferredShutdownTask Waiting for pipeline to shut down: slave| [kingbase8_target - main] INFO  pipeline.StageTaskGroup Preparing tasks for stage: q-to-dbms| [kingbase8_target - main] INFO  filter.RenameDefinitions Parsing /home/flysync/replicator/flysync/flysync-replicator/support/filters-config/rename.csv:| [kingbase8_target - main] INFO  filter.RenameDefinitions schemac.*.* -> schemac1.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemac.tablew.* -> schemac2.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemav.tablee.* -> schemav1.tableee.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemab.tabler.* -> -.tabler1.-| [kingbase8_target - main] INFO  filter.RenameDefinitions *.tablet.* -> -.tablet1.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemaz.tableq.cola -> -.-.colaa| [kingbase8_target - main] INFO  filter.RenameDefinitions *.tablew.colb -> -.-.colbb| [kingbase8_target - main] INFO  filter.RenameDefinitions *.*.colc -> -.-.colcc| [kingbase8_target - main] INFO  filter.RenameDefinitions schemax.*.cold -> -.-.coldd| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.*.* -> scheman2.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.tabley.* -> -.tabley2.-| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.tabley.colj -> -.-.colj2| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.tabley.colk -> -.-.colk2| [kingbase8_target - main] INFO  filter.RenameDefinitions schemam.*.* -> schemam2.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemam.tableu.* -> schemam2.tableu2.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemam.tableu.colj -> -.-.colj2| [kingbase8_target - main] INFO  filter.RenameDefinitions OA11G.*.* -> oa11g0017.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions OA11G.EMP.* -> oa11g0017.emp0017.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.trep_commit_seqno.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.consistency.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.heartbeat.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.trep_shard.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.trep_shard_channel.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  applier.JdbcApplier Connecting to data source| [kingbase8_target - main] INFO  applier.JdbcApplier Suppressing logging on privileged slave| [kingbase8_target - main] WARN  pipeline.StageTaskGroup [main-q-to-dbms-0] Last event data not available; Setting extractor to current position| [kingbase8_target - main] INFO  filter.RenameDefinitions Parsing /home/flysync/replicator/flysync/flysync-replicator/support/filters-config/rename.csv:| [kingbase8_target - main] INFO  filter.RenameDefinitions schemac.*.* -> schemac1.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemac.tablew.* -> schemac2.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemav.tablee.* -> schemav1.tableee.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemab.tabler.* -> -.tabler1.-| [kingbase8_target - main] INFO  filter.RenameDefinitions *.tablet.* -> -.tablet1.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemaz.tableq.cola -> -.-.colaa| [kingbase8_target - main] INFO  filter.RenameDefinitions *.tablew.colb -> -.-.colbb| [kingbase8_target - main] INFO  filter.RenameDefinitions *.*.colc -> -.-.colcc| [kingbase8_target - main] INFO  filter.RenameDefinitions schemax.*.cold -> -.-.coldd| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.*.* -> scheman2.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.tabley.* -> -.tabley2.-| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.tabley.colj -> -.-.colj2| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.tabley.colk -> -.-.colk2| [kingbase8_target - main] INFO  filter.RenameDefinitions schemam.*.* -> schemam2.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemam.tableu.* -> schemam2.tableu2.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemam.tableu.colj -> -.-.colj2| [kingbase8_target - main] INFO  filter.RenameDefinitions OA11G.*.* -> oa11g0017.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions OA11G.EMP.* -> oa11g0017.emp0017.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.trep_commit_seqno.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.consistency.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.heartbeat.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.trep_shard.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.trep_shard_channel.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  applier.JdbcApplier Connecting to data source| [kingbase8_target - main] INFO  applier.JdbcApplier Suppressing logging on privileged slave| [kingbase8_target - main] WARN  pipeline.StageTaskGroup [main-q-to-dbms-1] Last event data not available; Setting extractor to current position| [kingbase8_target - main] INFO  filter.RenameDefinitions Parsing /home/flysync/replicator/flysync/flysync-replicator/support/filters-config/rename.csv:| [kingbase8_target - main] INFO  filter.RenameDefinitions schemac.*.* -> schemac1.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemac.tablew.* -> schemac2.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemav.tablee.* -> schemav1.tableee.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemab.tabler.* -> -.tabler1.-| [kingbase8_target - main] INFO  filter.RenameDefinitions *.tablet.* -> -.tablet1.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemaz.tableq.cola -> -.-.colaa| [kingbase8_target - main] INFO  filter.RenameDefinitions *.tablew.colb -> -.-.colbb| [kingbase8_target - main] INFO  filter.RenameDefinitions *.*.colc -> -.-.colcc| [kingbase8_target - main] INFO  filter.RenameDefinitions schemax.*.cold -> -.-.coldd| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.*.* -> scheman2.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.tabley.* -> -.tabley2.-| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.tabley.colj -> -.-.colj2| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.tabley.colk -> -.-.colk2| [kingbase8_target - main] INFO  filter.RenameDefinitions schemam.*.* -> schemam2.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemam.tableu.* -> schemam2.tableu2.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemam.tableu.colj -> -.-.colj2| [kingbase8_target - main] INFO  filter.RenameDefinitions OA11G.*.* -> oa11g0017.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions OA11G.EMP.* -> oa11g0017.emp0017.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.trep_commit_seqno.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.consistency.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.heartbeat.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.trep_shard.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.trep_shard_channel.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  applier.JdbcApplier Connecting to data source| [kingbase8_target - main] INFO  applier.JdbcApplier Suppressing logging on privileged slave| [kingbase8_target - main] WARN  pipeline.StageTaskGroup [main-q-to-dbms-2] Last event data not available; Setting extractor to current position| [kingbase8_target - main] INFO  pipeline.StageTaskGroup Preparing tasks for stage: loader-to-q| [kingbase8_target - main] INFO  extractor.ExtractorWrapper Preparing raw extractor and heartbeat filter| [kingbase8_target - main] WARN  pipeline.StageTaskGroup [main-loader-to-q-0] Last event data not available; Setting extractor to current position| [kingbase8_target - main] INFO  pipeline.Pipeline Starting pipeline: slave| [kingbase8_target - main-loader-to-q-0] INFO  pipeline.SingleThreadStageTask Starting stage task thread| [kingbase8_target - main-q-to-dbms-0] INFO  pipeline.SingleThreadStageTask Starting stage task thread| [kingbase8_target - main-q-to-dbms-1] INFO  pipeline.SingleThreadStageTask Starting stage task thread| [kingbase8_target - main-q-to-dbms-2] INFO  pipeline.SingleThreadStageTask Starting stage task thread| [kingbase8_target - main-q-to-dbms-0] INFO  applier.JdbcApplier nologging: oa11g0017.COUNTRIES| [kingbase8_target - main-q-to-dbms-0] INFO  applier.JdbcApplier nologging: oa11g0017.emp0017| [kingbase8_target - main-loader-to-q-0] INFO  pipeline.SingleThreadStageTask Task has been cancelled| [kingbase8_target - main-loader-to-q-0] INFO  pipeline.SingleThreadStageTask Terminating processing for stage task thread| [kingbase8_target - main-loader-to-q-0] INFO  pipeline.SingleThreadStageTask Last successfully processed event prior to termination: seqno=12 eventid=NIL| [kingbase8_target - main-loader-to-q-0] INFO  pipeline.SingleThreadStageTask Task event count: 13| [kingbase8_target - main-q-to-dbms-1] INFO  applier.JdbcApplier nologging: oa11g0017.DEPARTMENTS| [kingbase8_target - main-q-to-dbms-1] INFO  applier.JdbcApplier nologging: oa11g0017.EMPLOYEES| [kingbase8_target - main-q-to-dbms-1] INFO  applier.JdbcApplier nologging: oa11g0017.LOCATIONS| [kingbase8_target - main-q-to-dbms-1] INFO  applier.JdbcApplier nologging: oa11g0017.RUPD$_EMP| [kingbase8_target - main-q-to-dbms-1] INFO  pipeline.SingleThreadStageTask Task has been cancelled| [kingbase8_target - main-q-to-dbms-1] INFO  pipeline.SingleThreadStageTask Performing rollback of possible partial transaction: seqno=(unavailable)| [kingbase8_target - main-q-to-dbms-1] INFO  pipeline.SingleThreadStageTask Terminating processing for stage task thread| [kingbase8_target - main-q-to-dbms-1] INFO  pipeline.SingleThreadStageTask Last successfully processed event prior to termination: seqno=12 eventid=NIL| [kingbase8_target - main-q-to-dbms-1] INFO  pipeline.SingleThreadStageTask Task event count: 5| [kingbase8_target - main-q-to-dbms-0] INFO  applier.JdbcApplier nologging: oa11g0017.JOB_HISTORY| [kingbase8_target - main-q-to-dbms-0] INFO  applier.JdbcApplier nologging: oa11g0017.REGIONS| [kingbase8_target - main-q-to-dbms-0] INFO  pipeline.SingleThreadStageTask Task has been cancelled| [kingbase8_target - main-q-to-dbms-0] INFO  pipeline.SingleThreadStageTask Terminating processing for stage task thread| [kingbase8_target - main-q-to-dbms-0] INFO  pipeline.SingleThreadStageTask Last successfully processed event prior to termination: seqno=12 eventid=NIL| [kingbase8_target - main-q-to-dbms-0] INFO  pipeline.SingleThreadStageTask Task event count: 5| [kingbase8_target - main-q-to-dbms-2] INFO  applier.JdbcApplier nologging: oa11g0017.DEPT| [kingbase8_target - main-q-to-dbms-2] INFO  applier.JdbcApplier nologging: oa11g0017.JOBS| [kingbase8_target - main-q-to-dbms-2] INFO  applier.JdbcApplier nologging: oa11g0017.MLOG$_EMP| [kingbase8_target - main-q-to-dbms-2] INFO  applier.JdbcApplier nologging: oa11g0017.SALGRADE| [kingbase8_target - main-q-to-dbms-2] INFO  pipeline.SingleThreadStageTask Task has been cancelled| [kingbase8_target - main-q-to-dbms-2] INFO  pipeline.SingleThreadStageTask Performing rollback of possible partial transaction: seqno=(unavailable)| [kingbase8_target - main-q-to-dbms-2] INFO  pipeline.SingleThreadStageTask Terminating processing for stage task thread| [kingbase8_target - main-q-to-dbms-2] INFO  pipeline.SingleThreadStageTask Last successfully processed event prior to termination: seqno=12 eventid=NIL| [kingbase8_target - main-q-to-dbms-2] INFO  pipeline.SingleThreadStageTask Task event count: 5| [kingbase8_target - pool-5-thread-1] INFO  pipeline.DeferredShutdownTask Pipeline has shut down, dispatching offline event: slave| [kingbase8_target - main] INFO  pipeline.Pipeline Shutting down pipeline: slave| [kingbase8_target - main] INFO  pipeline.Pipeline Releasing pipeline: slave| [kingbase8_target - main] INFO  pipeline.StageTaskGroup Releasing tasks for stage: loader-to-q| [kingbase8_target - main] INFO  extractor.ExtractorWrapper Releasing raw extractor and heartbeat filter| [kingbase8_target - main] INFO  pipeline.StageTaskGroup Releasing tasks for stage: q-to-dbms| [kingbase8_target - pipeline-0] INFO  conf.ReplicatorRuntime Replicator role: slave| [kingbase8_target - pipeline-0] INFO  conf.ReplicatorRuntime Setting consistencyFailureStop to true| [kingbase8_target - pipeline-0] INFO  conf.ReplicatorRuntime Setting consistencyCheckColumnNames to true| [kingbase8_target - pipeline-0] INFO  conf.ReplicatorRuntime Setting consistencyCheckColumnTypes to true| [kingbase8_target - pipeline-0] INFO  conf.ReplicatorRuntime Setting applierFailurePolicy to warn| [kingbase8_target - pipeline-0] INFO  conf.ReplicatorRuntime Setting applierFailurePolicy to warn| [kingbase8_target - pipeline-0] INFO  conf.ReplicatorRuntime Setting replicator.applier.failOnZeroRowUpdate to warn| [kingbase8_target - pipeline-0] INFO  pipeline.Pipeline Configuring pipeline: slave| [kingbase8_target - pipeline-0] INFO  datasource.DataSourceService Configuring data source: name=global| [kingbase8_target - pipeline-0] INFO  datasource.DataSourceManager Loading data source: name=global className=com.kingbase.flysync.replicator.datasource.KingbaseDataSource| [kingbase8_target - pipeline-0] INFO  datasource.AbstractDataSource No cvsType provided; using default settings| [kingbase8_target - pipeline-0] INFO  datasource.AbstractDataSource Checking CSV formatter class: com.kingbase.flysync.replicator.csv.DefaultCsvDataFormat| [kingbase8_target - pipeline-0] INFO  datasource.DataSourceService Configuring data source: name=extractor| [kingbase8_target - pipeline-0] INFO  datasource.DataSourceManager Loading data source: name=extractor className=com.kingbase.flysync.replicator.datasource.AliasDataSource| [kingbase8_target - pipeline-0] INFO  datasource.DataSourceService Configuring data source: name=file_metadata| [kingbase8_target - pipeline-0] INFO  datasource.DataSourceManager Loading data source: name=file_metadata className=com.kingbase.flysync.replicator.datasource.FileDataSource| [kingbase8_target - pipeline-0] INFO  datasource.AbstractDataSource No cvsType provided; using default settings| [kingbase8_target - pipeline-0] INFO  datasource.AbstractDataSource Checking CSV formatter class: com.kingbase.flysync.replicator.csv.DefaultCsvDataFormat| [kingbase8_target - pipeline-0] INFO  pipeline.StageTaskGroup Instantiating and configuring tasks for stage: loader-to-q| [kingbase8_target - pipeline-0] INFO  extractor.ExtractorWrapper Configuring raw extractor and heartbeat filter| [kingbase8_target - pipeline-0] INFO  event.EventMetadataFilter Use default schema for unknown SQL statements: false| [kingbase8_target - pipeline-0] INFO  extractor.ExtractorWrapper Master auto-repositioning on source_id change is enabled; extractor will reposition current log position if last extracted source_id differs from current source_id| [kingbase8_target - pipeline-0] INFO  pipeline.StageTaskGroup Instantiating and configuring tasks for stage: q-to-dbms| [kingbase8_target - pipeline-0] INFO  conf.ReplicatorRuntime Preparing pipeline for use: slave| [kingbase8_target - pipeline-0] INFO  pipeline.Pipeline Preparing pipeline: slave| [kingbase8_target - pipeline-0] INFO  datasource.DataSourceService Preparing and initializing data source: name=file_metadata| [kingbase8_target - pipeline-0] INFO  datasource.FileDataSource Initializing data source files: service=kingbase8_target directory=/home/flysync/replicator/metadata/applier| [kingbase8_target - pipeline-0] INFO  datasource.FileCommitSeqno Validated that trep_commit_seqno file count matches channels: files=1 channels=1| [kingbase8_target - pipeline-0] INFO  datasource.DataSourceService Preparing and initializing data source: name=global| [kingbase8_target - pipeline-0] INFO  datasource.DataSourceService Setting catalog handling for privileged slave/relay: name=global| [kingbase8_target - pipeline-0] INFO  datasource.DataSourceService Disabling logging of updates for slave/relay: name=global| [kingbase8_target - pool-11-thread-1] INFO  pipeline.DeferredShutdownTask Waiting for pipeline to shut down: slave| [kingbase8_target - pipeline-0] INFO  pipeline.StageTaskGroup Preparing tasks for stage: q-to-dbms| [kingbase8_target - pipeline-0] INFO  filter.RenameDefinitions Parsing /home/flysync/replicator/flysync/flysync-replicator/support/filters-config/rename.csv:| [kingbase8_target - pipeline-0] INFO  filter.RenameDefinitions schemac.*.* -> schemac1.-.-| [kingbase8_target - pipeline-0] INFO  filter.RenameDefinitions schemac.tablew.* -> schemac2.-.-| [kingbase8_target - pipeline-0] INFO  filter.RenameDefinitions schemav.tablee.* -> schemav1.tableee.-| [kingbase8_target - pipeline-0] INFO  filter.RenameDefinitions schemab.tabler.* -> -.tabler1.-| [kingbase8_target - pipeline-0] INFO  filter.RenameDefinitions *.tablet.* -> -.tablet1.-| [kingbase8_target - pipeline-0] INFO  filter.RenameDefinitions schemaz.tableq.cola -> -.-.colaa| [kingbase8_target - pipeline-0] INFO  filter.RenameDefinitions *.tablew.colb -> -.-.colbb| [kingbase8_target - pipeline-0] INFO  filter.RenameDefinitions *.*.colc -> -.-.colcc| [kingbase8_target - pipeline-0] INFO  filter.RenameDefinitions schemax.*.cold -> -.-.coldd| [kingbase8_target - pipeline-0] INFO  filter.RenameDefinitions scheman.*.* -> scheman2.-.-| [kingbase8_target - pipeline-0] INFO  filter.RenameDefinitions scheman.tabley.* -> -.tabley2.-| [kingbase8_target - pipeline-0] INFO  filter.RenameDefinitions scheman.tabley.colj -> -.-.colj2| [kingbase8_target - pipeline-0] INFO  filter.RenameDefinitions scheman.tabley.colk -> -.-.colk2| [kingbase8_target - pipeline-0] INFO  filter.RenameDefinitions schemam.*.* -> schemam2.-.-| [kingbase8_target - pipeline-0] INFO  filter.RenameDefinitions schemam.tableu.* -> schemam2.tableu2.-| [kingbase8_target - pipeline-0] INFO  filter.RenameDefinitions schemam.tableu.colj -> -.-.colj2| [kingbase8_target - pipeline-0] INFO  filter.RenameDefinitions OA11G.*.* -> oa11g0017.-.-| [kingbase8_target - pipeline-0] INFO  filter.RenameDefinitions OA11G.EMP.* -> oa11g0017.emp0017.-| [kingbase8_target - pipeline-0] INFO  filter.RenameDefinitions FLYSYNC.trep_commit_seqno.* -> flysync_kingbase8_target.-.-| [kingbase8_target - pipeline-0] INFO  filter.RenameDefinitions FLYSYNC.consistency.* -> flysync_kingbase8_target.-.-| [kingbase8_target - pipeline-0] INFO  filter.RenameDefinitions FLYSYNC.heartbeat.* -> flysync_kingbase8_target.-.-| [kingbase8_target - pipeline-0] INFO  filter.RenameDefinitions FLYSYNC.trep_shard.* -> flysync_kingbase8_target.-.-| [kingbase8_target - pipeline-0] INFO  filter.RenameDefinitions FLYSYNC.trep_shard_channel.* -> flysync_kingbase8_target.-.-| [kingbase8_target - pipeline-0] INFO  applier.JdbcApplier Connecting to data source| [kingbase8_target - pipeline-0] INFO  applier.JdbcApplier Suppressing logging on privileged slave| [kingbase8_target - pipeline-0] WARN  pipeline.StageTaskGroup [pipeline-0-q-to-dbms-0] Last event data not available; Setting extractor to current position| [kingbase8_target - pipeline-0] INFO  pipeline.StageTaskGroup Preparing tasks for stage: loader-to-q| [kingbase8_target - pipeline-0] INFO  extractor.ExtractorWrapper Preparing raw extractor and heartbeat filter| [kingbase8_target - pipeline-0] WARN  pipeline.StageTaskGroup [pipeline-0-loader-to-q-0] Last event data not available; Setting extractor to current position| [kingbase8_target - pipeline-0] INFO  pipeline.Pipeline Starting pipeline: slave| [kingbase8_target - pipeline-0-loader-to-q-0] INFO  pipeline.SingleThreadStageTask Starting stage task thread| [kingbase8_target - pipeline-0-q-to-dbms-0] INFO  pipeline.SingleThreadStageTask Starting stage task thread| [kingbase8_target - pipeline-0-loader] INFO  loader.JdbcLoaderTask transfer data from "OA11G"."COUNTRIES":0-25| [kingbase8_target - pipeline-0-loader] INFO  loader.JdbcLoaderTask transfer data from "OA11G"."DEPARTMENTS":0-27| [kingbase8_target - pipeline-0-loader] INFO  loader.JdbcLoaderTask transfer data from "OA11G"."DEPT":0-4| [kingbase8_target - pipeline-0-loader] INFO  loader.JdbcLoaderTask transfer data from "OA11G"."EMP":0-14| [kingbase8_target - pipeline-0-loader] INFO  loader.JdbcLoaderTask transfer data from "OA11G"."EMPLOYEES":0-107| [kingbase8_target - pipeline-0-loader] INFO  loader.JdbcLoaderTask transfer data from "OA11G"."JOBS":0-19| [kingbase8_target - pipeline-0-loader] INFO  loader.JdbcLoaderTask transfer data from "OA11G"."JOB_HISTORY":0-10| [kingbase8_target - pipeline-0-loader] INFO  loader.JdbcLoaderTask transfer data from "OA11G"."LOCATIONS":0-23| [kingbase8_target - pipeline-0-loader] INFO  loader.JdbcLoaderTask transfer data from "OA11G"."MLOG$_EMP":0-0| [kingbase8_target - pipeline-0-loader] INFO  loader.JdbcLoaderTask transfer data from "OA11G"."REGIONS":0-4| [kingbase8_target - pipeline-0-loader] INFO  loader.JdbcLoaderTask transfer data from "OA11G"."RUPD$_EMP":0-0| [kingbase8_target - pipeline-0-loader] INFO  loader.JdbcLoaderTask transfer data from "OA11G"."SALGRADE":0-5| [kingbase8_target - pipeline-0-loader-to-q-0] INFO  pipeline.SingleThreadStageTask Task has been cancelled| [kingbase8_target - pipeline-0-loader-to-q-0] INFO  pipeline.SingleThreadStageTask Terminating processing for stage task thread| [kingbase8_target - pipeline-0-loader-to-q-0] INFO  pipeline.SingleThreadStageTask Last successfully processed event prior to termination: seqno=12 eventid=NIL| [kingbase8_target - pipeline-0-loader-to-q-0] INFO  pipeline.SingleThreadStageTask Task event count: 13| [kingbase8_target - pipeline-0-q-to-dbms-0] INFO  pipeline.SingleThreadStageTask Task has been cancelled| [kingbase8_target - pipeline-0-q-to-dbms-0] INFO  pipeline.SingleThreadStageTask Terminating processing for stage task thread| [kingbase8_target - pipeline-0-q-to-dbms-0] INFO  pipeline.SingleThreadStageTask Last successfully processed event prior to termination: seqno=12 eventid=NIL| [kingbase8_target - pipeline-0-q-to-dbms-0] INFO  pipeline.SingleThreadStageTask Task event count: 13| [kingbase8_target - pool-11-thread-1] INFO  pipeline.DeferredShutdownTask Pipeline has shut down, dispatching offline event: slave| [kingbase8_target - pipeline-0] INFO  pipeline.Pipeline Shutting down pipeline: slave| [kingbase8_target - pipeline-0] INFO  pipeline.Pipeline Releasing pipeline: slave| [kingbase8_target - pipeline-0] INFO  pipeline.StageTaskGroup Releasing tasks for stage: loader-to-q| [kingbase8_target - pipeline-0] INFO  extractor.ExtractorWrapper Releasing raw extractor and heartbeat filter| [kingbase8_target - pipeline-0] INFO  pipeline.StageTaskGroup Releasing tasks for stage: q-to-dbms| [kingbase8_target - main] INFO  loader.TargetLoaderWorker Tables imported| [kingbase8_target - main] INFO  loader.LoaderWorker | -------------------------打印执行结果开始-------------------------| [kingbase8_target - main] INFO  loader.LoaderWorker | OA11G.COUNTRIES : success| [kingbase8_target - main] INFO  loader.LoaderWorker | OA11G.JOB_HISTORY : success| [kingbase8_target - main] INFO  loader.LoaderWorker | OA11G.MLOG$_EMP : success| [kingbase8_target - main] INFO  loader.LoaderWorker | OA11G.DEPT : success| [kingbase8_target - main] INFO  loader.LoaderWorker | OA11G.REGIONS : success| [kingbase8_target - main] INFO  loader.LoaderWorker | OA11G.DEPARTMENTS : success| [kingbase8_target - main] INFO  loader.LoaderWorker | OA11G.EMPLOYEES : success| [kingbase8_target - main] INFO  loader.LoaderWorker | OA11G.SALGRADE : success| [kingbase8_target - main] INFO  loader.LoaderWorker | OA11G.LOCATIONS : success| [kingbase8_target - main] INFO  loader.LoaderWorker | OA11G.EMP : success| [kingbase8_target - main] INFO  loader.LoaderWorker | OA11G.JOBS : success| [kingbase8_target - main] INFO  loader.LoaderWorker | OA11G.RUPD$_EMP : success| [kingbase8_target - main] INFO  loader.LoaderWorker | -------------------------打印执行结果结束-------------------------| [kingbase8_target - main] INFO  conf.ReplicatorRuntime Replicator role: slave| [kingbase8_target - main] INFO  conf.ReplicatorRuntime Setting consistencyFailureStop to true| [kingbase8_target - main] INFO  conf.ReplicatorRuntime Setting consistencyCheckColumnNames to true| [kingbase8_target - main] INFO  conf.ReplicatorRuntime Setting consistencyCheckColumnTypes to true| [kingbase8_target - main] INFO  conf.ReplicatorRuntime Setting applierFailurePolicy to warn| [kingbase8_target - main] INFO  conf.ReplicatorRuntime Setting applierFailurePolicy to warn| [kingbase8_target - main] INFO  conf.ReplicatorRuntime Setting replicator.applier.failOnZeroRowUpdate to warn| [kingbase8_target - main] INFO  pipeline.Pipeline Configuring pipeline: slave| [kingbase8_target - main] INFO  datasource.DataSourceService Configuring data source: name=global| [kingbase8_target - main] INFO  datasource.DataSourceManager Loading data source: name=global className=com.kingbase.flysync.replicator.datasource.KingbaseDataSource| [kingbase8_target - main] INFO  datasource.AbstractDataSource No cvsType provided; using default settings| [kingbase8_target - main] INFO  datasource.AbstractDataSource Checking CSV formatter class: com.kingbase.flysync.replicator.csv.DefaultCsvDataFormat| [kingbase8_target - main] INFO  datasource.DataSourceService Configuring data source: name=extractor| [kingbase8_target - main] INFO  datasource.DataSourceManager Loading data source: name=extractor className=com.kingbase.flysync.replicator.datasource.AliasDataSource| [kingbase8_target - main] INFO  datasource.DataSourceService Configuring data source: name=file_metadata| [kingbase8_target - main] INFO  datasource.DataSourceManager Loading data source: name=file_metadata className=com.kingbase.flysync.replicator.datasource.FileDataSource| [kingbase8_target - main] INFO  datasource.AbstractDataSource No cvsType provided; using default settings| [kingbase8_target - main] INFO  datasource.AbstractDataSource Checking CSV formatter class: com.kingbase.flysync.replicator.csv.DefaultCsvDataFormat| [kingbase8_target - main] INFO  pipeline.StageTaskGroup Instantiating and configuring tasks for stage: loader-to-q| [kingbase8_target - main] INFO  extractor.ExtractorWrapper Configuring raw extractor and heartbeat filter| [kingbase8_target - main] INFO  event.EventMetadataFilter Use default schema for unknown SQL statements: false| [kingbase8_target - main] INFO  extractor.ExtractorWrapper Master auto-repositioning on source_id change is enabled; extractor will reposition current log position if last extracted source_id differs from current source_id| [kingbase8_target - main] INFO  pipeline.StageTaskGroup Instantiating and configuring tasks for stage: q-to-dbms| [kingbase8_target - main] INFO  conf.ReplicatorRuntime Preparing pipeline for use: slave| [kingbase8_target - main] INFO  pipeline.Pipeline Preparing pipeline: slave| [kingbase8_target - main] INFO  datasource.DataSourceService Preparing and initializing data source: name=file_metadata| [kingbase8_target - main] INFO  datasource.FileDataSource Initializing data source files: service=kingbase8_target directory=/home/flysync/replicator/metadata/applier| [kingbase8_target - main] INFO  datasource.FileCommitSeqno Validated that trep_commit_seqno file count matches channels: files=1 channels=1| [kingbase8_target - main] INFO  datasource.DataSourceService Preparing and initializing data source: name=global| [kingbase8_target - main] INFO  datasource.DataSourceService Setting catalog handling for privileged slave/relay: name=global| [kingbase8_target - main] INFO  datasource.DataSourceService Disabling logging of updates for slave/relay: name=global| [kingbase8_target - pool-15-thread-1] INFO  pipeline.DeferredShutdownTask Waiting for pipeline to shut down: slave| [kingbase8_target - main] INFO  pipeline.StageTaskGroup Preparing tasks for stage: q-to-dbms| [kingbase8_target - main] INFO  filter.RenameDefinitions Parsing /home/flysync/replicator/flysync/flysync-replicator/support/filters-config/rename.csv:| [kingbase8_target - main] INFO  filter.RenameDefinitions schemac.*.* -> schemac1.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemac.tablew.* -> schemac2.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemav.tablee.* -> schemav1.tableee.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemab.tabler.* -> -.tabler1.-| [kingbase8_target - main] INFO  filter.RenameDefinitions *.tablet.* -> -.tablet1.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemaz.tableq.cola -> -.-.colaa| [kingbase8_target - main] INFO  filter.RenameDefinitions *.tablew.colb -> -.-.colbb| [kingbase8_target - main] INFO  filter.RenameDefinitions *.*.colc -> -.-.colcc| [kingbase8_target - main] INFO  filter.RenameDefinitions schemax.*.cold -> -.-.coldd| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.*.* -> scheman2.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.tabley.* -> -.tabley2.-| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.tabley.colj -> -.-.colj2| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.tabley.colk -> -.-.colk2| [kingbase8_target - main] INFO  filter.RenameDefinitions schemam.*.* -> schemam2.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemam.tableu.* -> schemam2.tableu2.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemam.tableu.colj -> -.-.colj2| [kingbase8_target - main] INFO  filter.RenameDefinitions OA11G.*.* -> oa11g0017.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions OA11G.EMP.* -> oa11g0017.emp0017.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.trep_commit_seqno.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.consistency.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.heartbeat.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.trep_shard.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.trep_shard_channel.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  applier.JdbcApplier Connecting to data source| [kingbase8_target - main] INFO  applier.JdbcApplier Suppressing logging on privileged slave| [kingbase8_target - main] WARN  pipeline.StageTaskGroup [main-q-to-dbms-0] Last event data not available; Setting extractor to current position| [kingbase8_target - main] INFO  filter.RenameDefinitions Parsing /home/flysync/replicator/flysync/flysync-replicator/support/filters-config/rename.csv:| [kingbase8_target - main] INFO  filter.RenameDefinitions schemac.*.* -> schemac1.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemac.tablew.* -> schemac2.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemav.tablee.* -> schemav1.tableee.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemab.tabler.* -> -.tabler1.-| [kingbase8_target - main] INFO  filter.RenameDefinitions *.tablet.* -> -.tablet1.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemaz.tableq.cola -> -.-.colaa| [kingbase8_target - main] INFO  filter.RenameDefinitions *.tablew.colb -> -.-.colbb| [kingbase8_target - main] INFO  filter.RenameDefinitions *.*.colc -> -.-.colcc| [kingbase8_target - main] INFO  filter.RenameDefinitions schemax.*.cold -> -.-.coldd| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.*.* -> scheman2.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.tabley.* -> -.tabley2.-| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.tabley.colj -> -.-.colj2| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.tabley.colk -> -.-.colk2| [kingbase8_target - main] INFO  filter.RenameDefinitions schemam.*.* -> schemam2.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemam.tableu.* -> schemam2.tableu2.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemam.tableu.colj -> -.-.colj2| [kingbase8_target - main] INFO  filter.RenameDefinitions OA11G.*.* -> oa11g0017.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions OA11G.EMP.* -> oa11g0017.emp0017.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.trep_commit_seqno.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.consistency.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.heartbeat.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.trep_shard.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.trep_shard_channel.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  applier.JdbcApplier Connecting to data source| [kingbase8_target - main] INFO  applier.JdbcApplier Suppressing logging on privileged slave| [kingbase8_target - main] WARN  pipeline.StageTaskGroup [main-q-to-dbms-1] Last event data not available; Setting extractor to current position| [kingbase8_target - main] INFO  filter.RenameDefinitions Parsing /home/flysync/replicator/flysync/flysync-replicator/support/filters-config/rename.csv:| [kingbase8_target - main] INFO  filter.RenameDefinitions schemac.*.* -> schemac1.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemac.tablew.* -> schemac2.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemav.tablee.* -> schemav1.tableee.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemab.tabler.* -> -.tabler1.-| [kingbase8_target - main] INFO  filter.RenameDefinitions *.tablet.* -> -.tablet1.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemaz.tableq.cola -> -.-.colaa| [kingbase8_target - main] INFO  filter.RenameDefinitions *.tablew.colb -> -.-.colbb| [kingbase8_target - main] INFO  filter.RenameDefinitions *.*.colc -> -.-.colcc| [kingbase8_target - main] INFO  filter.RenameDefinitions schemax.*.cold -> -.-.coldd| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.*.* -> scheman2.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.tabley.* -> -.tabley2.-| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.tabley.colj -> -.-.colj2| [kingbase8_target - main] INFO  filter.RenameDefinitions scheman.tabley.colk -> -.-.colk2| [kingbase8_target - main] INFO  filter.RenameDefinitions schemam.*.* -> schemam2.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemam.tableu.* -> schemam2.tableu2.-| [kingbase8_target - main] INFO  filter.RenameDefinitions schemam.tableu.colj -> -.-.colj2| [kingbase8_target - main] INFO  filter.RenameDefinitions OA11G.*.* -> oa11g0017.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions OA11G.EMP.* -> oa11g0017.emp0017.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.trep_commit_seqno.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.consistency.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.heartbeat.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.trep_shard.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  filter.RenameDefinitions FLYSYNC.trep_shard_channel.* -> flysync_kingbase8_target.-.-| [kingbase8_target - main] INFO  applier.JdbcApplier Connecting to data source| [kingbase8_target - main] INFO  applier.JdbcApplier Suppressing logging on privileged slave| [kingbase8_target - main] WARN  pipeline.StageTaskGroup [main-q-to-dbms-2] Last event data not available; Setting extractor to current position| [kingbase8_target - main] INFO  pipeline.StageTaskGroup Preparing tasks for stage: loader-to-q| [kingbase8_target - main] INFO  extractor.ExtractorWrapper Preparing raw extractor and heartbeat filter| [kingbase8_target - main] WARN  pipeline.StageTaskGroup [main-loader-to-q-0] Last event data not available; Setting extractor to current position| [kingbase8_target - main] INFO  pipeline.Pipeline Starting pipeline: slave| [kingbase8_target - main-q-to-dbms-0] INFO  pipeline.SingleThreadStageTask Starting stage task thread| [kingbase8_target - main-q-to-dbms-2] INFO  pipeline.SingleThreadStageTask Starting stage task thread| [kingbase8_target - main-loader-to-q-0] INFO  pipeline.SingleThreadStageTask Starting stage task thread| [kingbase8_target - main-q-to-dbms-1] INFO  pipeline.SingleThreadStageTask Starting stage task thread| [kingbase8_target - main-loader-to-q-0] INFO  pipeline.SingleThreadStageTask Task has been cancelled| [kingbase8_target - main-loader-to-q-0] INFO  pipeline.SingleThreadStageTask Terminating processing for stage task thread| [kingbase8_target - main-loader-to-q-0] INFO  pipeline.SingleThreadStageTask Last successfully processed event prior to termination: seqno=12 eventid=NIL| [kingbase8_target - main-loader-to-q-0] INFO  pipeline.SingleThreadStageTask Task event count: 13| [kingbase8_target - main-q-to-dbms-0] INFO  pipeline.SingleThreadStageTask Task has been cancelled| [kingbase8_target - main-q-to-dbms-0] INFO  pipeline.SingleThreadStageTask Terminating processing for stage task thread| [kingbase8_target - main-q-to-dbms-0] INFO  pipeline.SingleThreadStageTask Last successfully processed event prior to termination: seqno=12 eventid=NIL| [kingbase8_target - main-q-to-dbms-0] INFO  pipeline.SingleThreadStageTask Task event count: 5| [kingbase8_target - main-q-to-dbms-2] INFO  pipeline.SingleThreadStageTask Task has been cancelled| [kingbase8_target - main-q-to-dbms-2] INFO  pipeline.SingleThreadStageTask Performing rollback of possible partial transaction: seqno=(unavailable)| [kingbase8_target - main-q-to-dbms-2] INFO  pipeline.SingleThreadStageTask Terminating processing for stage task thread| [kingbase8_target - main-q-to-dbms-2] INFO  pipeline.SingleThreadStageTask Last successfully processed event prior to termination: seqno=12 eventid=NIL| [kingbase8_target - main-q-to-dbms-2] INFO  pipeline.SingleThreadStageTask Task event count: 5| [kingbase8_target - main-q-to-dbms-1] INFO  pipeline.SingleThreadStageTask Task has been cancelled| [kingbase8_target - main-q-to-dbms-1] INFO  pipeline.SingleThreadStageTask Performing rollback of possible partial transaction: seqno=(unavailable)| [kingbase8_target - main-q-to-dbms-1] INFO  pipeline.SingleThreadStageTask Terminating processing for stage task thread| [kingbase8_target - main-q-to-dbms-1] INFO  pipeline.SingleThreadStageTask Last successfully processed event prior to termination: seqno=12 eventid=NIL| [kingbase8_target - main-q-to-dbms-1] INFO  pipeline.SingleThreadStageTask Task event count: 5| [kingbase8_target - pool-15-thread-1] INFO  pipeline.DeferredShutdownTask Pipeline has shut down, dispatching offline event: slave| [kingbase8_target - main] INFO  pipeline.Pipeline Shutting down pipeline: slave| [kingbase8_target - main] INFO  pipeline.Pipeline Releasing pipeline: slave| [kingbase8_target - main] INFO  pipeline.StageTaskGroup Releasing tasks for stage: loader-to-q| [kingbase8_target - main] INFO  extractor.ExtractorWrapper Releasing raw extractor and heartbeat filter| [kingbase8_target - main] INFO  pipeline.StageTaskGroup Releasing tasks for stage: q-to-dbms| [kingbase8_target - main] INFO  loader.LoaderCtrl Total time:2| [kingbase8_target - main] INFO  loader.LoaderCtrl 
--------------------------------------------------------------------------------
TOTAL:             12
SUCCESS:           12
FAILURE:           0
TOTAL TIME:        2s
FINISHED AT:       2023-11-18 12:53:12
+-----+--------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------+--------+----------+
|NUM  |SOURCE_TABLE                                                                                                                    |TARGET_TABLE                                                                                                                    |STATUS  |TOTAL     |
+-----+--------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------+--------+----------+
|1    |OA11G.DEPT                                                                                                                      |oa11g0017.DEPT                                                                                                                  |Success |4         |
|2    |OA11G.REGIONS                                                                                                                   |oa11g0017.REGIONS                                                                                                               |Success |4         |
|3    |OA11G.JOB_HISTORY                                                                                                               |oa11g0017.JOB_HISTORY                                                                                                           |Success |10        |
|4    |OA11G.JOBS                                                                                                                      |oa11g0017.JOBS                                                                                                                  |Success |19        |
|5    |OA11G.DEPARTMENTS                                                                                                               |oa11g0017.DEPARTMENTS                                                                                                           |Success |27        |
|6    |OA11G.LOCATIONS                                                                                                                 |oa11g0017.LOCATIONS                                                                                                             |Success |23        |
|7    |OA11G.EMP                                                                                                                       |oa11g0017.emp0017                                                                                                               |Success |14        |
|8    |OA11G.SALGRADE                                                                                                                  |oa11g0017.SALGRADE                                                                                                              |Success |5         |
|9    |OA11G.COUNTRIES                                                                                                                 |oa11g0017.COUNTRIES                                                                                                             |Success |25        |
|10   |OA11G.EMPLOYEES                                                                                                                 |oa11g0017.EMPLOYEES                                                                                                             |Success |107       |
|11   |OA11G.RUPD$_EMP                                                                                                                 |                                                                                                                                |Success |0         |
|12   |OA11G.MLOG$_EMP                                                                                                                 |                                                                                                                                |Success |0         |
+-----+--------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------+--------+----------+[flysync@node2 KingbaseFlySync-V002R002C004B20230320-replicator]$ 

(4).增量数据同步

1.将两台服务器同步服务设置为ONLINE,开始同步数据

a.Oracle端(Oracle40)
[flysync@oracle40 ~]$ fsrepctl -service oracle_source online
[flysync@oracle40 ~]$ fsrepctl -service oracle_source services
Processing services command...
NAME              VALUE
----              -----
appliedLastSeqno: -1
appliedLatency  : -1.0
role            : master
serviceName     : oracle_source
serviceType     : local
started         : true
state           : ONLINE
Finished services command...
[flysync@oracle40 ~]$ 
b.KES端(node2)
[flysync@node2 ~]$  fsrepctl -service kingbase8_target online
[flysync@node2 ~]$ fsrepctl -service kingbase8_target services
Processing services command...
NAME              VALUE
----              -----
appliedLastSeqno: -1
appliedLatency  : -1.0
role            : slave
serviceName     : kingbase8_target
serviceType     : local
started         : true
state           : ONLINE
Finished services command...
[flysync@node2 ~]$ 

2.同步进程状态:查看同步是否正常

a.Oracle端(Oracle40)
[flysync@oracle40 ~]$ fsrepctl -service oracle_source  status
Processing status command...
NAME                     VALUE
----                     -----
appliedLastEventId     : NONE
appliedLastSeqno       : -1
appliedLatency         : -1.0
autoRecoveryEnabled    : false
autoRecoveryTotal      : 0
channels               : 1
clusterName            : oracle_source
currentEventId         : NONE
currentTimeMillis      : 1700285898857
dataServerHost         : oracle40
extensions             : 
host                   : oracle40
latestEpochNumber      : -1
masterConnectUri       : kufl://localhost:/
masterListenUri        : kufl://oracle40:3112/
maximumStoredSeqNo     : -1
minimumStoredSeqNo     : -1
offlineRequests        : NONE
pendingError           : NONE
pendingErrorCode       : NONE
pendingErrorEventId    : NONE
pendingErrorSeqno      : -1
pendingExceptionMessage: NONE
pipelineSource         : UNKNOWN
relativeLatency        : -1.0
resourcePrecedence     : 99
rmiPort                : 11000
role                   : master
seqnoType              : java.lang.Long
serviceName            : oracle_source
serviceType            : local
simpleServiceName      : oracle_source
siteName               : default
sourceId               : oracle40
state                  : ONLINE
timeInStateSeconds     : 281.988
timezone               : GMT+08:00
transitioningTo        : 
uptimeSeconds          : 311.791
useSSLConnection       : false
version                : Kingbase FlySync V002R002C004B20230320
Finished status command...
[flysync@oracle40 ~]$ 
b.KES端(node2)
[flysync@node2 ~]$ fsrepctl -service kingbase8_target  status
Processing status command...
NAME                     VALUE
----                     -----
appliedLastEventId     : NONE
appliedLastSeqno       : -1
appliedLatency         : -1.0
autoRecoveryEnabled    : false
autoRecoveryTotal      : 0
channels               : 1
clusterName            : kingbase8_target
currentEventId         : NONE
currentTimeMillis      : 1700285956812
dataServerHost         : node2
extensions             : 
host                   : node2
latestEpochNumber      : -1
masterConnectUri       : kufl://oracle40:3112/
masterListenUri        : kufl://node2:3112/
maximumStoredSeqNo     : -1
minimumStoredSeqNo     : -1
offlineRequests        : NONE
pendingError           : NONE
pendingErrorCode       : NONE
pendingErrorEventId    : NONE
pendingErrorSeqno      : -1
pendingExceptionMessage: NONE
pipelineSource         : kufl://oracle40:3112/
relativeLatency        : -1.0
resourcePrecedence     : 99
rmiPort                : 11000
role                   : slave
seqnoType              : java.lang.Long
serviceName            : kingbase8_target
serviceType            : local
simpleServiceName      : kingbase8_target
siteName               : default
sourceId               : node2
state                  : ONLINE
timeInStateSeconds     : 157.735
timezone               : GMT+08:00
transitioningTo        : 
uptimeSeconds          : 2963.937
useSSLConnection       : false
version                : Kingbase FlySync V002R002C004B20230320
Finished status command...
[flysync@node2 ~]$ 

3.数据同步验证(验证DML)

a.在源端(Oracle)中插入数据
[flysync@oracle40 ~]$ exit
logout
[root@oracle40 ~]# su - oracle
Last login: Sat Nov 18 10:11:54 CST 2023 on pts/1
[oracle@oracle40 ~]$ sqlplus OA11G/oa11g
SQL*Plus: Release 11.2.0.4.0 Production on Sat Nov 18 13:40:20 2023
Copyright (c) 1982, 2013, Oracle.  All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing optionsSQ> DESC oa11g.emp;Name					   Null?    Type----------------------------------------- -------- ----------------------------EMPNO					   NOT NULL NUMBER(4)ENAME						    VARCHAR2(10)JOB						    VARCHAR2(9)MGR						    NUMBER(4)HIREDATE					    DATESAL						    NUMBER(7,2)COMM						    NUMBER(7,2)DEPTNO 					    NUMBER(2)
SQL> DESC oa11g.dept;Name					   Null?    Type----------------------------------------- -------- ----------------------------DEPTNO 				   NOT NULL NUMBER(2)DNAME						    VARCHAR2(14)LOC						    VARCHAR2(13)
SQL> INSERT INTO oa11g.emp(EMPNO, ENAME) VALUES(7935,'KFS');
1 row created.
SQL> INSERT INTO oa11g.dept VALUES(50,'engineer','NEW YORK');
1 row created.
SQL> COMMIT;
Commit complete.
SQL> 
b.查看源端kufl 是否解析。
SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
[oracle@oracle40 ~]$ exit
logout
[root@oracle40 ~]# su - flysync
Last login: Sat Nov 18 11:57:55 CST 2023 on pts/0
[flysync@oracle40 ~]$ kufl list -last 1
SEQ# = 0 / FRAG# = 0 (last frag)
- TIME = 2023-11-18 13:40:46.0
- EPOCH# = 0
- EVENTID = ora:0:1212379
- SOURCEID = oracle40
- METADATA = [dbms_type=oracle;tz_aware=true;xid=1688884220003487;tz_aware=true;all_tables=[OA11G.EMP, OA11G.MLOG$_EMP, OA11G.DEPT];service=oracle_source;shard=OA11G]
- TYPE = com.kingbase.flysync.replicator.event.ReplDBMSEvent
- OPTIONS = []- SQL(0) =- ACTION = INSERT- SCHEMA = OA11G- TABLE = EMP- ROW# = 0- COL(1: EMPNO) = 7935- COL(2: ENAME) = KFS- COL(3: JOB) = NULL- COL(4: MGR) = NULL- COL(5: HIREDATE) = NULL- COL(6: SAL) = NULL- COL(7: COMM) = NULL- COL(8: DEPTNO) = NULL- SQL(1) =- ACTION = INSERT- SCHEMA = OA11G- TABLE = MLOG$_EMP- ROW# = 0- COL(1: EMPNO) = 7935- COL(2: SNAPTIME$$) = 4000-01-01 00:00:00- COL(3: DMLTYPE$$) = I- COL(4: OLD_NEW$$) = N- COL(5: CHANGE_VECTOR$$) = [B@180bc464- COL(6: XID$$) = 1688884220003487- SQL(2) =- ACTION = INSERT- SCHEMA = OA11G- TABLE = DEPT- ROW# = 0- COL(1: DEPTNO) = 50- COL(2: DNAME) = engineer- COL(3: LOC) = NEW YORK- SQL(3) =- ACTION = DELETE- SCHEMA = OA11G- TABLE = MLOG$_EMP- ROW# = 0- KEY(1: EMPNO) = 7935- KEY(2: SNAPTIME$$) = 4000-01-01 00:00:00- KEY(3: DMLTYPE$$) = I- KEY(4: OLD_NEW$$) = N- KEY(5: CHANGE_VECTOR$$) = [B@1324409e- KEY(6: XID$$) = 1688884220003487[flysync@oracle40 ~]$ 
c.在目标端验证kufl是否解析
[flysync@node2 ~]$  kufl list -last 1
SEQ# = 0 / FRAG# = 0 (last frag)
- TIME = 2023-11-18 13:40:46.0
- EPOCH# = 0
- EVENTID = ora:0:1212379
- SOURCEID = oracle40
- METADATA = [dbms_type=oracle;tz_aware=true;xid=1688884220003487;tz_aware=true;all_tables=[OA11G.EMP, OA11G.MLOG$_EMP, OA11G.DEPT];service=oracle_source;shard=OA11G]
- TYPE = com.kingbase.flysync.replicator.event.ReplDBMSEvent
- OPTIONS = []- SQL(0) =- ACTION = INSERT- SCHEMA = oa11g0017- TABLE = emp0017- ROW# = 0- COL(1: EMPNO) = 7935- COL(2: ENAME) = KFS- COL(3: JOB) = NULL- COL(4: MGR) = NULL- COL(5: HIREDATE) = NULL- COL(6: SAL) = NULL- COL(7: COMM) = NULL- COL(8: DEPTNO) = NULL- SQL(1) =- ACTION = INSERT- SCHEMA = oa11g0017- TABLE = MLOG$_EMP- ROW# = 0- COL(1: EMPNO) = 7935- COL(2: SNAPTIME$$) = 4000-01-01 00:00:00- COL(3: DMLTYPE$$) = I- COL(4: OLD_NEW$$) = N- COL(5: CHANGE_VECTOR$$) = [B@68837a77- COL(6: XID$$) = 1688884220003487- SQL(2) =- ACTION = INSERT- SCHEMA = oa11g0017- TABLE = DEPT- ROW# = 0- COL(1: DEPTNO) = 50- COL(2: DNAME) = engineer- COL(3: LOC) = NEW YORK- SQL(3) =- ACTION = DELETE- SCHEMA = oa11g0017- TABLE = MLOG$_EMP- ROW# = 0- KEY(1: EMPNO) = 7935- KEY(2: SNAPTIME$$) = 4000-01-01 00:00:00- KEY(3: DMLTYPE$$) = I- KEY(4: OLD_NEW$$) = N- KEY(5: CHANGE_VECTOR$$) = [B@6be46e8f- KEY(6: XID$$) = 1688884220003487
[flysync@node2 ~]$ 
d.登录到KES数据中查询数据是否存在
[flysync@node2 ~]$ exit
登出
[root@node2 ~]# su - kingbase
上一次登录:六 1118 12:01:37 CST 2023pts/0 上
[kingbase@node2 ~]$ cd /KingbaseES/V8/Server/bin/
[kingbase@node2 bin]$ ./ksql -Usystem test
ksql (V8.0)
输入 "help" 来获取帮助信息.
test=# SELECT * FROM oa11g0017.emp0017 WHERE empno=7935;empno | ename | job | mgr | hiredate | sal | comm | deptno 
-------+-------+-----+-----+----------+-----+------+--------7935 | KFS   |     |     |          |     |      |       
(1 行记录)
test=# SELECT * FROM oa11g0017.dept WHERE deptno=50;deptno |  dname   |   loc    
--------+----------+----------50 | engineer | NEW YORK
(1 行记录)
test=# 

配置文件服务名错误解决办法

比如 oracle_source写成了oracle_sources
这是最快的解决办法
如果只是配置更新
请先停止服务然后修改flysync.ini文件,并用fspm update进行更新即可

例:

  1. 停止同步
[flysync@oracle40 ~]$ replicator  stop
Stopping FlySync Replicator Service...
Stopped FlySync Replicator Service.
  1. 删除安装目录
[flysync@oracle40 ~]$ rm -rf ~/replicator/
  1. 修改~/flysync.ini配置文件并重新安装
[flysync@oracle40 ~]$ ~/install/KingbaseFlySync-V002R002C004B20230320-replicator/tools/fspm install
  1. 重新拷贝授权
 cp ~/install/license.dat ~/replicator/license.dat
  1. 重启服务
fsrepctl -service oracle_source offline

相关文章:

【Kingbase FlySync】命令模式:安装部署同步软件,实现Oracle到KES实现同步

【Kingbase FlySync】命令模式:安装部署同步软件,实现Oracle到KES实现同步 一.准备工作二.环境说明三.目标四.资源虚拟机 五.实操(1).准备安装环境Orcle服务器(Oracle40)1.上传所有工具包2.操作系统配置a.增加flysync 用户、设置密码b.配置环境变量c.调整limits.con…...

2311d导入c的语义不同

原文 以下D代码正常工作: enum X "X"; import core.stdc.stdio; void main(){puts(X); }但是,如果该X枚举是C文件中#define的结果,则会出现错误: //x.c #define X "X" //D代码 import x; import core.stdc.stdio; void main(){puts(X); //错误 }错误:不…...

OpenHarmony Meetup北京站招募令

OpenHarmony Meetup城市巡回北京站火热来袭!!日期:2023年11月25日14:00地点:中国科学院软件园区五号楼B402与OpenHarmony技术大咖近距离互动,分享技术见解,结交志同道合的朋友!活动主题聚焦Open…...

C语言——冒泡排序

一、冒泡排序是什么 冒泡排序: 冒泡排序(Bubble Sort),又被称为气泡排序或泡沫排序。升序时:它会遍历若干次需要排序的数列,每次遍历时,它都会从前往后依次的比较相邻两个数的大小;如果前者比后者大&#x…...

08.智慧商城——购物车布局、全选反选、功能实现

01. 购物车 - 静态布局 基本结构 <template><div class"cart"><van-nav-bar title"购物车" fixed /><!-- 购物车开头 --><div class"cart-title"><span class"all">共<i>4</i>件商品…...

金属压块液压打包机比例阀放大器

液压打包机是机电一体化产品&#xff0c;主要由机械系统、液压控制系统、上料系统与动力系统等组成。整个打包过程由压包、回程、提箱、转箱、出包上行、出包下行、接包等辅助时间组成。市场上液压打包机主要分为卧式与立式两种&#xff0c;立式废纸打包机的体积比较小&#xf…...

python 自动化福音,30行代码手撸ddt模块

用 python 做过自动化的小伙伴&#xff0c;大多数都应该使用过 ddt 这个模块&#xff0c;不可否认 ddt 这个模块确实挺好用&#xff0c;可以自动根据用例数据&#xff0c;来生成测试用例&#xff0c;能够很方便的将测试数据和测试用例执行的逻辑进行分离。 接下来就带大家一起…...

基于GATK流程化进行SNP calling

在进行变异检测时&#xff0c;以群体基因组重测序数据为例&#xff0c;涉及到的个体基本都是上百个&#xff0c;而其中大多数流程均是重复的步骤。 本文将基于GATK进行SNP calling的流程写入循环&#xff0c;便于批量分析。 1 涉及变量 1.工作目录work_dir/ 2.参考基因组ref…...

【Java SE】如何解读Java的继承和多态的特性?

前言 什么是继承和多态&#xff0c;为什么被称为Java三大特性&#xff0c;这两大特性为我们程序员带来了什么影响呢&#xff1f;是让复杂的代码简化了&#xff0c;还是为程序员写代码提供了多样性呢&#xff1f;那让我们一起来揭开这层神秘的面纱吧&#xff01; 1.继承 1.1为…...

uniapp 手动调用form表单submit事件

背景&#xff1a; UI把提交的按钮弄成了图片&#xff0c;之前的button不能用了。 <button form-type"submit">搜索</button> 实现&#xff1a; html&#xff1a; 通过 this.$refs.fd 获取到form的vue对象。手动调用里面的_onSubmit()方法。 methods:…...

11月20日星期一今日早报简报微语报早读

11月20日星期一&#xff0c;农历十月初八&#xff0c;早报微语早读。 1、T1以3-0横扫WBG&#xff0c;拿下S13冠军&#xff01;Faker豪取第4冠&#xff1b; 2、天舟七号货运飞船已运抵文昌发射场&#xff0c;将于明年初发射&#xff1b; 3、“中韩之战”球票已经售罄&#xf…...

Unity中 Start和Awake的区别

Awake和Start在Unity中都是MonoBehaviour脚本中的生命周期函数 Awake函数在游戏对象首次被加载时调用&#xff0c;在游戏对象初始化之前调用。 start函数在游戏对象初始化完成后调用&#xff0c;在update第一次执行前调用。 这两个函数在其生命周期内都只会调用一次&#xf…...

进度条、git常见指令以及gdb的常用指令

进度条 进度条是笔者所接触的第一个更加贴近于系统的小玩意&#xff0c;主要是要理解回车、换行、换行回车和缓冲区的概念。 回车是回到当前行的第一个光标位置&#xff0c;换行是换到下一行但是光标还在原来的位置&#xff0c;换行回车就是键盘上面的回车键是回到下一行的第…...

ubuntu20编译安装pkg-config

从下载到安装的步骤如下: wget https://pkg-config.freedesktop.org/releases/pkg-config-0.29.tar.gztar -zxvf pkg-config-0.29.tar.gzcd pkg-config-0.29/./configure --with-internal-glibsudo makesudo make checksudo make install make过程中可能会遇到的问题&#x…...

奇富科技发布鸿蒙元服务1.0版本,打造鸿蒙生态金融科技全新体验

近日&#xff0c;奇富科技率先发布鸿蒙元服务1.0版本&#xff0c;成为首家融入鸿蒙生态的金融科技公司&#xff0c;为用户带来前所未有的数字生活体验。此次与华为终端云的全面合作&#xff0c;是两大行业领军者的深度融合&#xff0c;不仅实现技术的交融&#xff0c;更彰显两大…...

【Git学习一】初始化仓库git init的使用和提交git add与git commit的使用

&#x1f601; 作者简介&#xff1a;一名大四的学生&#xff0c;致力学习前端开发技术 ⭐️个人主页&#xff1a;夜宵饽饽的主页 ❔ 系列专栏&#xff1a;Git等软件工具技术的使用 &#x1f450;学习格言&#xff1a;成功不是终点&#xff0c;失败也并非末日&#xff0c;最重要…...

Redux-状态管理组件

一、简介 react中的状态只属于某个组件。而Redux是一个全局管理js状态的架构&#xff0c;让组件通信更加容易。 之前是状态在所有组件间传递&#xff0c;而redux通过store来实现这个功能。 Redux特性&#xff1a; 1.Single source Of truth&#xff0c;通过store唯一维护状态…...

【bigo前端】egret中的对象池浅谈

本文首发于&#xff1a;https://github.com/bigo-frontend/blog/ 欢迎关注、转载。 egret是一款小游戏开发引擎&#xff0c;支持跨平台开发&#xff0c;之前使用这款引擎开发了一款捕鱼游戏&#xff0c;在这里简单聊下再egret中关于对象池的使用&#xff0c;虽然该引擎已经停止…...

用公式告诉你 现货黄金投资者要不要换策略?

看过笔者相关文章的朋友都知道&#xff0c;其实笔者是相当不鼓励投资者更改策略的。但这并不意味着&#xff0c;策略不能改或者换。之所以反对更改策略&#xff0c;是因为很多人对自己的策略还没上手&#xff0c;没了解清楚就急着换策略&#xff0c;这是没必要的。通过下面这个…...

系列六、多线程集合不安全

一、多线程List集合不安全 1.1、List集合不安全案例代码 /*** Author : 一叶浮萍归大海* Date: 2023/11/20 12:38* Description: 多线层环境下List集合不安全案例代码*/ public class NotSafeListMainApp {public static void main(String[] args) {List<String> list …...

P10909 [蓝桥杯 2024 国 B] 立定跳远

# P10909 [蓝桥杯 2024 国 B] 立定跳远 ## 题目描述 在运动会上&#xff0c;小明从数轴的原点开始向正方向立定跳远。项目设置了 $n$ 个检查点 $a_1, a_2, \cdots , a_n$ 且 $a_i \ge a_{i−1} > 0$。小明必须先后跳跃到每个检查点上且只能跳跃到检查点上。同时&#xff0…...

理想汽车5月交付40856辆,同比增长16.7%

6月1日&#xff0c;理想汽车官方宣布&#xff0c;5月交付新车40856辆&#xff0c;同比增长16.7%。截至2025年5月31日&#xff0c;理想汽车历史累计交付量为1301531辆。 官方表示&#xff0c;理想L系列智能焕新版在5月正式发布&#xff0c;全系产品力有显著的提升&#xff0c;每…...

【Zephyr 系列 16】构建 BLE + LoRa 协同通信系统:网关转发与混合调度实战

🧠关键词:Zephyr、BLE、LoRa、混合通信、事件驱动、网关中继、低功耗调度 📌面向读者:希望将 BLE 和 LoRa 结合应用于资产追踪、环境监测、远程数据采集等场景的开发者 📊篇幅预计:5300+ 字 🧭 背景与需求 在许多 IoT 项目中,单一通信方式往往难以兼顾近场数据采集…...

SpringCloud优势

目录 完善的微服务支持 高可用性和容错性 灵活的配置管理 强大的服务网关 分布式追踪能力 丰富的社区生态 易于与其他技术栈集成 完善的微服务支持 Spring Cloud 提供了一整套工具和组件来支持微服务架构的开发,包括服务注册与发现、负载均衡、断路器、配置管理等功能…...

更新 Docker 容器中的某一个文件

&#x1f504; 如何更新 Docker 容器中的某一个文件 以下是几种在 Docker 中更新单个文件的常用方法&#xff0c;适用于不同场景。 ✅ 方法一&#xff1a;使用 docker cp 拷贝文件到容器中&#xff08;最简单&#xff09; &#x1f9f0; 命令格式&#xff1a; docker cp <…...

Python爬虫(四):PyQuery 框架

PyQuery 框架详解与对比 BeautifulSoup 第一部分&#xff1a;PyQuery 框架介绍 1. PyQuery 是什么&#xff1f; PyQuery 是一个 Python 的 HTML/XML 解析库&#xff0c;它采用了 jQuery 的语法风格&#xff0c;让开发者能够用类似前端 jQuery 的方式处理文档解析。它的核心特…...

使用VMware克隆功能快速搭建集群

自己搭建的虚拟机&#xff0c;后续不管是学习java还是大数据&#xff0c;都需要集群&#xff0c;java需要分布式的微服务&#xff0c;大数据Hadoop的计算集群&#xff0c;如果从头开始搭建虚拟机会比较费时费力&#xff0c;这里分享一下如何使用克隆功能快速搭建一个集群 先把…...

无头浏览器技术:Python爬虫如何精准模拟搜索点击

1. 无头浏览器技术概述 1.1 什么是无头浏览器&#xff1f; 无头浏览器是一种没有图形用户界面&#xff08;GUI&#xff09;的浏览器&#xff0c;它通过程序控制浏览器内核&#xff08;如Chromium、Firefox&#xff09;执行页面加载、JavaScript渲染、表单提交等操作。由于不渲…...

Ansys Maxwell:线圈和磁体的静磁 3D 分析

本博客展示了如何在 Ansys Maxwell 中执行静磁 3D 分析&#xff0c;以计算载流线圈和永磁体之间相互作用产生的扭矩。在这个例子中&#xff0c;线圈中的电流产生一个沿 Y 轴指向的磁场&#xff0c;而永磁体沿 X 轴被磁化。这种配置导致围绕 Z 轴的扭矩。分步工作流程包括构建几…...

Continue 开源 AI 编程助手框架深度分析

Continue 开源 AI 编程助手框架深度分析 一、项目简介 Continue 是一个模块化、可配置、跨平台的开源 AI 编程助手框架&#xff0c;目标是让开发者能在本地或云端环境中&#xff0c;快速集成和使用自定义的 LLM 编程辅助工具。它通过支持 VS Code 与 JetBrains 等主流 IDE 插件…...