跳到主要内容

OceanBase

选择对端数据库:

数据链路

基本功能

功能说明
结构迁移

如目标不存在所选表,则自动根据源端元数据,结合映射生成对端创建语句并执行创建

全量数据迁移

逻辑迁移,通过顺序扫描表数据,将数据分批写入到对端数据库

增量实时同步

支持 INSERT, UPDATE, DELETE 常见 DML 同步
无主键表 UPDATE、DELETE 不同步(需手动勾选)

数据校验和订正

全量数据校验,并可选根据校验结果订正差异数据,支持定时,文档:创建定时校验订正任务

修改订阅

新增、删除、修改订阅表,支持历史数据迁移,文档:修改订阅

重置位点

支持 时间戳文件位点 回溯位点,重新消费过去一段时间 OceanBase 增量数据

表名映射

支持 和源端保持一致, 转小写, 转大写, 以'_数字'后缀截取

DDL 同步
  • ALTER TABLE ADD COLUMN, DROP COLUMN, MODIFY COLUMN, CHANGE COLUMN
  • ADD INDEX
  • RENAME TABLE
  • 其他兼容 DDL

高级功能

功能说明
基于 CDC 模式的增量同步

支持基于 OceanBase LogProxy 进行增量数据同步

基于 Binlog 模式的增量同步

支持基于 OceanBase Binlog 服务进行增量数据同步,此方式仅限于 OceanBase for MySQL 版本

指定租户迁移同步

指定租户以解析 ObLogProxy 事件中所带的相关信息

全量前清空目标数据

运行全量任务前清除老数据,包括重跑任务、定时全量迁移都会触发此能力

重建目标表

运行全量任务前重建目标表,包括重跑任务、定时全量迁移都会触发此能力

增量写入冲突策略

IGNORE: 主键冲突则忽略(不做写入),REPLACE: 主键冲突则整行替换

0 值时间处理

支持将 0 值时间设置成不同类型的值,防止写入对端报错

自定义代码

文档1:创建自定义代码任务
文档2:自定义代码任务 debug
文档3:在自定义代码中打日志

数据过滤条件

支持 WHERE 条件进行数据过滤,内容为 SQL 92 子集,文档:创建数据过滤任务

设置目标主键

变更主键为其他字段,方便数据聚合等操作

使用示例

标题详情
OceanBase 源端数据迁移同步

文档:OceanBase 源端数据迁移同步


源端数据源

前置条件

条件说明
账号权限

具备 SYS 租户下所有表权限, 迁移同步库表 SELECT 权限

网络准备

迁移同步节点(sidecar)可连接 OceanBase server 交互端口(如 2881),LogProxy 交互端口(如有,如 2983)

任务参数

参数名称说明
needJsonEscape

将 json 中特殊字符进行转义,以写入到对端

fullDataSqlConditionEnabled

将过滤条件拼入 SQL 中进行源端数据扫描,此参数只针对全量迁移有效

eventStoreSize

缓存解析完毕的增量事件缓存大小

obIncreMode

增量模式, 包括 LogProxyBinlog 两种模式

clusterUrl

OceanBase 集群地址服务(类 name server)

obLogProxyHost

LogProxy 服务地址,常见格式为 ip:2983,LogProxy 增量模式必填项

rpcPortList

OceanBase server 节点 RPC 端口,如 host 参数为 ip1;ip2, 则此参数对应为 port1;port2, 常见端口 2882 ,LogProxy 增量模式必填项

syncAccount

LogProxy 连接 OceanBase server 的账号(可选)

syncPwd

LogProxy 连接 OceanBase server 的密码(可选)

tenant

需要订阅表所在的 tenant

workingMode

LogProxy 依赖的 libobcdc 参数,默认值为 storage

Tips: 通用参数配置请参考 通用参数及功能


目标端数据源

前置条件

条件说明
账号权限

文档:MySQL / MariaDB 需要的权限

网络准备

迁移同步节点(sidecar)可连接 MySQL / MariaDB 标准交互接口(如 3306)

任务参数

参数名称说明
keyConflictStrategy

增量写入遇到主键冲突策略:

  • IGNORE 冲突忽略(默认)
  • REPLACE 冲突替换(可选)

dstWholeReplace

将 INSERT 和 UPDATE 操作变成对端整行覆盖

deCycle

双向同步过滤开关,过滤特定标记的 DML/DDL

specialSqlMode

初始化数据库链接时,可以设置特定的 sql mode

defaultGisSRID

设置 GIS 数据类型的 SRID

dstTimeZone

目标端时区,例如 +08:00, Asia/Shanghai, America/New_York等

increParallelApplyStrategy

关系型数据库对端写入数据并行策略:

  • KEY: 以主键进行分区并行写入
  • TABLE: 以表进行分区并行写入
  • KEY_UPGRADE_TABLE: 以主键进行分区并行写入,若有更新唯一键的操作升级为表进行分区写入

Tips: 通用参数配置请参考 通用参数及功能

数据链路

基本功能

高级功能

限制和注意点

使用示例

链路FAQ

源端数据源

前置条件

任务参数

目标端数据源

前置条件

任务参数