1 源库配置
- 说明:
在配置之前请确认数据库版本和libobcdc.so.4版本的兼容性
1.1 修改配置文件
1.1.1 查看OB数据库模式
MySQL [oceanbase]> show variables like 'ob_compatibility_mode';
+-----------------------+-------+
| Variable_name | Value |
+-----------------------+-------+
| ob_compatibility_mode | MYSQL |
+-----------------------+-------+
1 row in set (0.003 sec)1.1.2 检查归档是否开启
- 检查归档是否开启
obclient [oceanbase]> show parameters like 'enable_log_archive';
+--------+----------+---------------+----------+--------------------+-----------+-------+-------------------------------+----------+---------+---------+-------------------+
| zone | svr_type | svr_ip | svr_port | name | data_type | value | info | section | scope | source | edit_level |
+--------+----------+---------------+----------+--------------------+-----------+-------+-------------------------------+----------+---------+---------+-------------------+
| zone_1 | observer | 192.168.2.154 | 2882 | enable_log_archive | NULL | True | control if enable log archive | OBSERVER | CLUSTER | DEFAULT | DYNAMIC_EFFECTIVE |
+--------+----------+---------------+----------+--------------------+-----------+-------+-------------------------------+----------+---------+---------+-------------------+
1 row in set (0.024 sec)
SELECT TENANT_NAME, LOG_MODE FROM oceanbase.DBA_OB_TENANTS WHERE TENANT_TYPE = 'USER'\G
*************************** 1. row ***************************
TENANT_NAME: uf30
LOG_MODE: ARCHIVELOG
1 row in set (0.006 sec)- 打开归档
MySQL [(none)]> ALTER SYSTEM ARCHIVELOG;
Query OK, 0 rows affected (0.428 sec)- 要求开启归档(enable_log_archive=True)
- 设置归档位置(使用默认配置无需修改)
MySQL [(none)]> alter system set backup_dest='file:///home///admin///obbackup';
Query OK, 0 rows affected (0.195 sec)- 说明:
1.用户在配置数据库信息时需要在user处填写user@tenant_name格式的用户名,如果用户是集群用户,请勿填写#cluster_name,集群标识会导致无法解析当前用户的增量日志。端口需要填写2881。
2.数据库的sys租户不能作为数据同步用户。
3.zcbus_service后台程序需要和OceanBase库在一个局域网,real进程需要执行SHOW parameters LIKE ‘obconfig_url’命令获取并连接管理端口(默认2882),如果设置了端口转发会导致增量日志分析不到
4.OceanBase各个版本之间权限视图不一致,无法细致区分,DBA权限可规避该问题。
1.2 创建用户及赋权
1.2.1 创建用户
create user zcbus identified by '******';1.2.2 用户赋权
GRANT SELECT, SHOW VIEW, SHOW DATABASES ON *.* TO zcbus;
GRANT SELECT ON oceanbase.dba_ob_archivelog TO zcbus; ---ob2.2版本不需要执行此权限,系统中无此视图1.2.3 权限查询
show grants for zcbus;2 补充说明
2.1 OBCDC链接库文件获取和替换流程
2.1.1 查看ob数据库版本

zcbus默认的libobcdc版本对应数据库4.2.1.4,如果版本查询结果与默认版本不一致,需要进行替换
2.1.2 获取对应版本的lib文件
前往oceanbase官网进行下载获取或联系zcbus原厂工程师
https://www.oceanbase.com/softwarecenter
2.1.3 替换zcbus_server容器中的lib文件
进入对应server容器,将对应数据库版本的lib文件直接进行替换即可,注意包名必须为libobcdc.so.4
将lib包从宿主机上传至该目录命令
docker cp libobcdc.so.4 zcbus:/usr/local/zcbus/lib/zc_lib/oceanbase2.2 OBCDC集群配置(需要替换libobcdc.conf文件)
2.2.1 OCP的接口配置
show parameters like ‘%obconfig_url%’查询获取
2.2.1 配置服务器列表

2.3 ZCBUS相关oblog日志检查
tail -f /usr/local/zcbus/cache/node10109/oblog/log/liboblog.log- 注: node10109中10109为发布节点ID,容器内部运行,实际位置不变
兼容oceanbase2.2.77版本

注:
- 发布端数据库参数需要添加source_部分,链接业务租户,负责全量数据导出和业务表信息配置;而非source_数据库链接部分必须配置sys租户,负责增量日志解析,业务租户下无oceanbase._allvirtual_sys_parameter_stat视图,无法解析日志,否则cache目录下liboblog.log日志报错如下:

- 需使用ob3.2版本的lib包解析ob2.2版本的日志
wget http://zbomc.com:8888/ZCBUS/2.0/lib/oceanbase3.2.4_x86.tar.gz docker cp oceanbase3.2.4_x86.tar.gz zcbus:/usr/local/zcbus/lib/zc_lib/oceanbase docker exec -it zcbus bash cd /usr/local/zcbus/lib/zc_lib/oceanbase tar xvfz oceanbase3.2.4_x86.tar.gz
2.2 数据类型支持
| OB类型 | 是否支持 | 描述 |
|---|---|---|
| BOOL/BOOLEAN/TINYINT | 支持 | 值域(有符号)范围为[-2^7, 2^7 - 1],值域(无符号)范围为[0, 2^8 - 1] |
| SMALLINT | 支持 | 值域(有符号)范围为[-2^15, 2^15 - 1],值域(无符号)范围为[0, 2^16 - 1] |
| MEDIUMINT | 支持 | 值域(有符号)范围为[-2^23, 2^23 - 1],值域(无符号)范围为[0, 2^24 - 1] |
| INT/INTEGER | 支持 | 值域(有符号)范围为[-2^31, 2^31 - 1],值域(无符号)范围为[0, 2^32 - 1] |
| BIGINT | 支持 | 值域(有符号)范围为[-2^63, 2^63 - 1],值域(无符号)范围为[0, 2^64 - 1] |
| FLOAT | 支持 | 值域(有符号)范围为[-2^128, 2^128],值域(无符号)范围为[0, 2^128] |
| DOUBLE | 支持 | 值域(有符号)范围为[-2^1024, 2^1024],值域(无符号)范围为[0, 2^1024] |
| DATETIME | 支持 | 值域(有符号)范围为[0000-01-01 00:00:00.000,9999-12-31 23:59:59.999] |
| TIMESTAMP | 支持 | 值域(有符号)范围为[0000-01-01 00:00:00.000,9999-12-31 23:59:59.999] |
| DATE | 支持 | 值域(有符号)范围为[0000-01-01,9999-12-31] |
| TIME | 支持 | 值域(有符号)范围为[-838:59:59.000,838:59:59.000] |
| YEAR | 支持 | 值域(有符号)范围为[1901,2155] |
| VARCHAR | 支持 | 定义长度上限(字符):262144 / 256K ,字符集为UTF8MB4 |
| VARBINARY | 支持 | 定义长度上限(字符):1048576 / 1M,字符集为BINARY |
| CHAR | 支持 | 定义长度上限(字符):256,字符集为UTF8MB4 |
| BINARY | 支持 | 定义长度上限(字符):256,字符集为BINARY |
| enum | 支持 | 定义长度上限(字符):最多定义65535个元素,每个元素长度最多255个字符,字符集为UTF8MB4 |
| set | 支持 | 定义长度上限(字符):最多定义64个元素,每个元素长度最多255个字符,字符集为UTF8MB4 |
| TINYTEXT | 支持 | 存储长度上限(字节):256,字符集为UTF8MB4 |
| TINYBLOB | 支持 | 存储长度上限(字节):256 ,字符集为BINARY |
| TEXT | 支持 | 存储长度上限(字节):65536/64K,字符集为UTF8MB4 |
| BLOB | 支持 | 存储长度上限(字节):65536/64K,字符集为BINARY |
| MEDIUMTEXT | 支持 | 存储长度上限(字节):16777216/16M,字符集为UTF8MB4 |
| MEDIUMBLOB | 支持 | 存储长度上限(字节):16777216/16M,字符集为BINARY |
| LONGTEXT | 支持 | 存储长度上限(字节):50331648/48M,字符集为UTF8MB4 |
| LONGBLOB | 支持 | 存储长度上限(字节):50331648/48M,字符集为BINARY |
文档更新时间: 2026-06-03 18:16 作者:操李红