01. 环境说明
1.1 拓扑图
单机部署
1.2 服务器信息
服务器信息及软件版本:
02. 准备工作
(以下均为使用默认参数新建的实例操作)
2.1 SUNDB数据库准备
2.1.1查询当前配置信息及归档模式
#对比1.2.1.2参数情况
select archivelog_mode from v$archivelog;
select property_name ,property_value from v$property where property_name in (‘SUPPLEMENTAL_LOG_DATA_PRIMARY_KEY’,‘CLUSTER_ASYNC_COMMIT’,‘ARCHIVELOG_MODE’,‘DATA_STORE_MODE’);
2.1.2 配置sundb.properties.conf
如修改则增加或修改以下属性,修改后需重启sundb(重启时注意是否开启归档,参考1.2.1.3):
SUPPLEMENTAL_LOG_DATA_PRIMARY_KEY = YES
CLUSTER_ASYNC_COMMIT = NO
ARCHIVELOG_MODE = 1
DATA_STORE_MODE = 2
2.1.3 开启归档模式
(需重启sundb,集群需mount后open { local | global } database)
shutdown abort
startup mount
alter database archivelog;
alter system open database;
2.1.4 使用sys用户创建用于测试的schema、用户及授权
create user cdc identified by cdc;
grant create session on database to cdc;
grant create object on tablespace mem_data_tbs to cdc;
grant create object on tablespace mem_temp_tbs to cdc;
grant create object on tablespace mem_undo_tbs to cdc;
grant control schema on schema cdc to cdc;
commit;
2.1.5 创建用于cyfile的用户及授权
create user cdc01 identified by cdc01 without schema;
grant create session on database to cdc01;
grant select table on schema cdc to cdc01;
commit;
select username,user_id,account_status,default_tablespace,temporary_tablespace,index_tablespace,created from dba_users;
2.1.6 创建两张测试表
create table cdc.t1(col1 native_bigint primary key,col2 varchar(20));
create table cdc.t2(col1 native_bigint primary key,col2 varchar(20));
commit;
2.1.7添加附加日志
(开启附加日志配置后建的表,可忽略此操作)
ALTER TABLE cdc.t1 ADD SUPPLEMENTAL LOG DATA ( PRIMARY KEY ) COLUMNS;
ALTER TABLE cdc.t2 ADD SUPPLEMENTAL LOG DATA ( PRIMARY KEY ) COLUMNS;
2.1.8查询表:
select tablespace_name,table_schema||’.’||table_name as table_name,ceil(blocks*8192/1048576) || ’ MB’ as table_size from all_all_tables where table_schema not in (‘DEFINITION_SCHEMA’,‘DICTIONARY_SCHEMA’) order by table_name;
2.1.9 配置cyfile.conf
cat ${SUNDB_DATA}/conf/cyfile.conf
GROUP_NAME = g1
{
USER_ID = cdc01
USER_PW = cdc01
DSN=G1N1
CAPTURE_TABLE =
(
cdc.t1,
cdc.t2
)
}
2.2 系统目录准备
2.2.1配置创建相应数据存放目录
#对应cyfile中的数据文件存放路径
mkdir -p /home/sundb01/dat
03. 启停操作
3.1启动cyfile
cyfile --start #开启所有cyfile
cyfile --start --group g1 #开启g1的cyfile
cyfile --start --reset { all | table1,table2 } #开启并重置cyfile
3.2查看cyfile信息
cyfile --info #查看所有cyfile信息
cyfile --info --group g1 #查看g1的cyfile信息
3.3关闭cyfile
cyfile --stop #关闭所有的cyfile
cyfile --stop --group g1 #关闭g1的cyfile
04. 数据验证
4.1 数据库增加数据
connect cdc cdc
insert into cdc.t1(col1,col2) values (11,‘test1’),(12,‘test2’),(13,‘test3’);
insert into cdc.t2(col1,col2) values (21,‘test1’),(22,‘test2’),(23,‘test3’);
4.2查看数据目录文件
ls /home/sundb01/dat/
cyfile.G1_1.dat cyfile.G1.ctl cyfile.G1.ctl_0
4.3查看csv数据
tail -200f /home/sundb01/dat/cyfile.G1_1.dat
4.4 再次数据库增加数据
insert into cdc.t1(col1,col2) values (14,‘test4’),(15,‘test5’),(16,‘test6’);
4.5查看csv数据
tail -200f /home/sundb01/dat/cyfile.G1_1.dat






