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   作者:操李红