1 源库配置
1.1 修改配置文件
1.1.1 查看OB数据库模式
MySQL [oceanbase]> show variables like 'ob_compatibility_mode';
+-----------------------+-------+
| Variable_name | Value |
+-----------------------+-------+
| ob_compatibility_mode | ORACLE|
+-----------------------+-------+
1 row in set (0.003 sec)
1.1.2 检查归档是否开启
- 要求开启归档(log_mode=ARCHIVELOG)
查看租户名和归档师是否开启
SELECT TENANT_NAME, LOG_MODE FROM DBA_OB_TENANTS\G
- 打开归档
obclient [oceanbase]> ALTER SYSTEM ARCHIVELOG;
Query OK, 0 rows affected (0.902 sec)
- 检查归档是否开启
SELECT TENANT_NAME, LOG_MODE FROM DBA_OB_TENANTS\G
*************************** 1. row ***************************
TENANT_NAME: uf30
LOG_MODE: ARCHIVELOG
1 row in set (0.006 sec)
- 设置归档位置
obclient [oceanbase]> ALTER SYSTEM SET backup_dest='file:///home/admin/archivelogs';
Query OK, 0 rows affected (0.868 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 "******";
- 说明:用户在配置页面需要再user处配置user@tenant_name,如果用户是集群用户,请勿填写#cluster_name,集群标识会导致无法解析当前用户的增量日志。
1.2.2 用户赋权
方式一:
执行下述语句,操作较为简单,但赋予用户的权限较大。
GRANT DBA TO <user_name>;
方式二
赋予用户对业务库表的各类权限。如果存在多个业务库,请分别授权。
GRANT CONNECT TO <user_name>;
GRANT CREATE SESSION, ALTER SESSION, SELECT ANY TABLE, SELECT ANY DICTIONARY TO <user_name>;
1.2.3 权限查询
show grants for zcbus;
2 补充说明
2.1 ZCBUS相关oblog日志检查
tail -f /usr/local/zcbus/cache/node10109/oblog/log/liboblog.log
- 注: node10109中10109为发布节点ID,容器内部运行,实际位置不变
2.2 数据类型支持
OB类型 | 是否支持 | 描述 |
---|---|---|
NUMBER | 是 | NUMBER(p,s) 存储变长、十进制精度的定点数;也可以存储浮点数,此时 NUMBER 没有 p 和 s 。 |
FLOAT | 是 | FLOAT(p) 是 NUMBER 数据类型的子类型。二进制精度范围为 1~126。 FLOAT 不是浮点数。 |
BINARY_FLOAT | 是 | 二进制精度浮点数,是一种 32 位单精度浮点数数据类型。 |
BINARY_DOUBLE | 是 | 二进制精度浮点数,是一种 64 位双精度浮点数数据类型。 |
CHAR(size [BYTE | CHAR]) | 是 | 参数 size 必须是一个介于 1~2000 之间的数值,存储大小为 size 个字节。 |
NCHAR[(size)] | 是 | 参数 size 必须是一个介于 1~2000 之间的数值,存储大小为 size 字节的两倍。 |
NVARCHAR2(size) | 是 | 参数 size 的值必须介于 1~32767 之间,字节的存储大小是所输入字符个数的两倍。 |
VARCHAR2(size [BYTE | CHAR]) | 是 | 参数 size 必须是一个介于 1~32767 之间的数值,存储大小为输入数据的字节的实际长度,而不是 size 个字节。 |
VARCHAR(size [BYTE | CHAR]) | 是 | 参数 size 必须是一个介于 1~32767 之间的数值,存储大小为输入数据的字节的实际长度,而不是 size 个字节。 |
DATE | 是 | 存储日期和时间信息,精确到秒,不带时区。 |
TIMESTAMP | 是 | DATE 数据类型的扩展,精确到纳秒,不带时区。 |
TIMESTAMP WITH TIME ZONE | 是 | DATE 数据类型的扩展,精确到纳秒,带时区信息。 |
TIMESTAMP WITH LOCAL TIME ZONE | 是 | 带有本地时区的 TIMESTAMP ,存储数据库时区。 |
INTERVAL YEAR TO MONTH | 是 | 存储以年和月为单位的时间段。 |
INTERVAL DAY TO SECOND | 是 | 存储以天、小时、分钟和秒为单位的时间段。 |
RAW(length) | 是 | length表示长度,以字节为单位,作为数据库列最大存储 2000 字节的数据,作为变量最大存储2000 字节的数据。 |
BLOB | 是 | 定义长度上限(字符):48M,字符集为BINARY |
CLOB | 是 | 定义长度上限(字符):48M,字符集为BINARY |
文档更新时间: 2024-12-23 02:17 作者:操李红