支持模式
- 支持读取生产redo模式
- 支持读取ADG备库REDO模式(只支持读取归档日志)
软件支持基础
- 压缩表支持(11g-19c)
- 复制支持数据库范围(9i-19c)
- 支持操作系统
AIX
LINUX
HP-UX
SOLARIS
WINDOWS
1 修改配置
1.1 开启归档
1.1.1 检查数据库归档模式
SELECT NAME,LOG_MODE FROM V$DATABASE;
注:ORACLE数据库需开启归档模式
注:启用ARCHIVELOG模式需要Oracle实例短暂脱机。要了解更多信息,请参阅 Oracle归档日志说明文档。
注:ORACLE日志解析的过程中,ZCBUS只解析CURRENT状态下REDO和归档日志
备份软件备份过程中,备份脚本最少缓存几个小时或者一定周期日志。
1.1.2 数据库修改为归档模式步骤(单机模式)
SHUTDOWN IMMEDIATE;
STARTUP MOUNT;
ALTER DATABASE ARCHIVELOG;
ALTER DATABASE OPEN;
配置Oracle RMAN以将备份和归档日志保留至少24小时。我们建议将数据保留七天
RMAN> CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;
推荐设置:将DB_RECOVERY_FILE_DEST_SIZE参数设置为与可用磁盘空间相匹配的值,因为过期和过时的日志文件和备份文件会很快填满磁盘。有关详细信息,请参阅.Oracle的DB_RECOVERY_FILE_DEST_SIZE文
1.2 开启附加日志
1.2.1 库级别
- 查看库级附加日志开启情况
SELECT LOG_MODE, SUPPLEMENTAL_LOG_DATA_MIN MIN, SUPPLEMENTAL_LOG_DATA_PK PK, SUPPLEMENTAL_LOG_DATA_UI UI, SUPPLEMENTAL_LOG_DATA_FK FK, SUPPLEMENTAL_LOG_DATA_ALL ALLC FROM V$DATABASE;
- 库级开启附加日志
ALTER DATABASE ADD SUPPLEMENTAL LOG DATA; ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (PRIMARY KEY) COLUMNS; ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (UNIQUE INDEX) COLUMNS; ALTER DATABASE ADD SUPPLEMENTAL LOG DATA(ALL) COLUMNS;
1.2.2 表级别
- 查看表级附加日志开启情况
SELECT OWNER,TABLE_NAME,LOG_GROUP_TYPE FROM DBA_LOG_GROUPS WHERE OWNER='<USERNAME>' and TABLE_NAME='<TABLE_NAME>';
- 表级开启附加日志
ALTER TABLE <USERNAME>.<TABLE_NAME> ADD SUPPLEMENTAL LOG DATA(PRIMARY KEY) COLUMNS; ALTER TABLE <USERNAME>.<TABLE_NAME> ADD SUPPLEMENTAL LOG DATA(ALL) COLUMNS; ALTER TABLE <USERNAME>.<TABLE_NAME> ADD SUPPLEMENTAL LOG DATA(ALL,PRIMARY KEY,UNIQUE) COLUMNS;
1.3 创建用户及赋权
1.3.1 创建数据库用户
CREATE USER ZCBUS IDENTIFIED BY "********";
注:12C以上版本数据库的CDB模式zcbus用户名要以c##开头
1.3.2 数据库用户赋权
-- 连接数据库
GRANT CREATE SESSION TO ZCBUS;
-- 授予开发人员的。拥有rESOURCE权限的用户只可以创建实体,不可以创建数据库结构。
GRANT RESOURCE TO ZCBUS;
-- 查询任何表
GRANT SELECT ANY TABLE TO ZCBUS;
-- 查询任何字典
GRANT SELECT ANY DICTIONARY TO ZCBUS;
-- 查询部分字典和包
GRANT SELECT_CATALOG_ROLE TO ZCBUS;
-- 可执行部分字典和包
GRANT EXECUTE_CATALOG_ROLE TO ZCBUS;
-- 选择任何事务
GRANT SELECT ANY TRANSACTION TO ZCBUS;
-- 可执行DBMS_LOGMNR_D包
GRANT EXECUTE ON DBMS_LOGMNR_D TO ZCBUS;
-- 可执行DBMS_LOGMNR包
GRANT EXECUTE ON DBMS_LOGMNR TO ZCBUS;
-- 可执行DBMS_FLASHBACK包
GRANT EXECUTE ON DBMS_FLASHBACK TO ZCBUS;
-- flashback表权限
GRANT FLASHBACK ANY TABLE TO ZCBUS;
-- 12C版本以上执行,logmining权限
GRANT logmining TO ZCBUS;
注:12C以上版本数据库的CDB模式zcbus用户名要以c##开头
1.3.3 PDB模式用户创建及赋权
CREATE USER C##ZCBUS IDENTIFIED BY ******* CONTAINER=ALL;
GRANT CREATE SESSION TO C##ZCBUS CONTAINER=ALL;
GRANT RESOURCE TO C##ZCBUS CONTAINER=ALL;
GRANT SELECT ANY TABLE TO C##ZCBUS CONTAINER=ALL;
GRANT SELECT ANY DICTIONARY TO C##ZCBUS CONTAINER=ALL;
GRANT SELECT_CATALOG_ROLE TO C##ZCBUS CONTAINER=ALL;
GRANT EXECUTE_CATALOG_ROLE TO C##ZCBUS CONTAINER=ALL;
GRANT SELECT ANY TRANSACTION TO C##ZCBUS CONTAINER=ALL;
GRANT EXECUTE ON DBMS_LOGMNR_D TO C##ZCBUS CONTAINER=ALL;
GRANT EXECUTE ON DBMS_LOGMNR TO C##ZCBUS CONTAINER=ALL;
GRANT EXECUTE ON DBMS_FLASHBACK TO C##ZCBUS CONTAINER=ALL;
GRANT FLASHBACK ANY TABLE TO C##ZCBUS CONTAINER=ALL;
GRANT LOGMINING TO C##ZCBUS CONTAINER=ALL;
2 补充说明
2.1 发布PDB模式DB配置
注:
- PDB名称是否需要大小写,需要严格区分(否则增量数据会被过滤,无法分析到增量数据),输入正确的PDB名cdb下查询以下sql才能返回结果:
select CON_UID from dba_pdbs where PDB_NAME=’PDB名’;- zcbus程序只是程序启动才会检查节点信息,不会动态检查节点信息,比如添加删除节点,不能自动检查相应的节点信息,需要手动重启zcbus,如果不重启zcbus,相应的节点操作不能分析到。 -2021.06.20
- zcbus程序启动后再次启动down掉的节点,这种情况已支持 (zcbus-7.6-8-20210620.tar.gz版本修复了此项)
2.2 数据类型支持列表
ORACLE字段类型 | 字段描述 | 是否支持 |
---|---|---|
CHAR | 固定长度字符串,最大长度2000bytes | 是 |
VARCHAR2 | 可变长度的字符串, 最大长度4000bytes | 是 |
NCHAR | 根据字符集而定的固定长度字符串,最大长度2000bytes | 是 |
NVARCHAR2 | 根据字符集而定的可变长度字符串,最大长度4000bytes | 是 |
DATE | 日期(日-月-年),DD-MM-YY(HH-MI-SS),经过严格测试,无千虫问题 | 是 |
TIMESTAMP | 日期(日-月-年),DD-MM-YY(HH-MI-SS:FF3),经过严格测试,无千虫问题 | 是 |
TIMESTAMP WITH LOCAL TIME ZONE | 日期(日-月-年),该类型会转换成数据的时区来保存数据, 即在数据库中保存的时间是数据库本地的时区. 当别的地方用户访问数据库时在显示该类型数据时Oracle会将该时区转换成客户端的时间来显示. 在数据库中保存占7到11字节 | 是 |
TIMESTAMP WITH TIME ZONE | 日期(日-月-年),保存的是0时区的时间,和所处的时区信息,IMESTAMP WITH TIME ZONE保存的是当前时间转化到0时区的对应的时间,并通过最后两位来保存时区信息 | 是 |
LONG | 超长字符串 ,最大长度2G,足够存储大部头著作 | 是 |
RAW | 固定长度的二进制数据,最大长度2000bytes | 是 |
LONG RAW | 可变长度的二进制数据,最大长度2G | 是 |
BLOB | 二进制数据 ,最大长度4G | 是 |
CLOB | 字符数据 ,最大长度4G | 是 |
NCLOB | 根据字符集而定的字符数据,最大长度4G | 是 |
NUMBER(P,S) | 数字类型,P为整数位,S为小数位 | 是 |
DECIMAL(P,S) | 数字类型,P为整数位,S为小数位 | 是 |
INTEGER | 整数类型,小的整数 | 是 |
FLOAT | 浮点数类型,NUMBER(38),双精度 | 是 |
REAL | 实数类型,NUMBER(63),精度更高 | 是 |
XMLTYPE | XML类型,存储XML类型 | 是 |
TYPE | 自定义数据类型,自定义UDT字段,以及地图位置等数据类型暂不支持 | 不支持 |
BFILE | 二进制数据类型,BFILE字段存放指向操作系统文件的指针,外部的lob类型,存储在数据库外的操作系统文件 | 不支持 |
文档更新时间: 2024-03-01 19:40 作者:阿力