SQL Server在使用RTSync到GBase 8a进行数据的增量同步时,需要先开启SQL Server的指定库和表的CDC捕获功能。在上一篇文章中已经说过如何进行库表CDC日志的开启和相关注意事项,所以本篇文章中将介绍SQL Server到GBase 8a单表同步的测试过程。
- 创建表
# SQL Server中创建表:
create table ptb(a int key,b varchar(10));
# 在8a中创建表:
CREATE TABLE PTB(A INT KEY,B VARCHAR(10));
- 开启
CDC日志
use db_name;
execute sys.sp_cdc_enable_db;
exec sys.sp_cdc_enable_table
@source_schema='schema_name',
@source_name='ptb',
@capture_instance='cdc_name',
@supports_net_changes=0,
@role_name=null,
@allow_partition_switch=1;
- 停止
RTSync与consumer
# 停止RTSync
sh RTSyncManagerServer.sh stop
# 停止consumer(如果存在)
stop kafka consumer topic1;
- 删除topic
# 查看topic
sh kafka-topics.sh --list --zookeeper 192.168.10.111:2181
# 删除
sh kafka-topics.sh --zookeeper 192.168.10.111:2181 --delete --topic topic1
- 确认
RTSync配置
# 查看文件:config_task.xml中source与target节点信息正确
# 查看文件:config_kafka_tdsqlto8aMQ.properties
topic.name=topic1
- 创建
consumer
# 创建
create kafka consumer test1 transaction topic test1 brokers '192.168.10.121:9092,192.168.10.131:9092,192.168.10.141:9092';
# 启动
start kafka consumer test1;
- 执行
DML操作
# 插入
insert into ptb(a,b) values(1,'2'),(2,'bb'),(3,'4'),(4,'dd'),(5,'6'),(6,'ee'),(7,'8');
# 更新
update ptb set b='aa' where a=1;
# 删除
delete from ptb where a=5;
- 注:如果
RTSync与consumer都启动正常,且RTSync配置没有问题,但是数据没有正常同步,可以将topic与consumer删除并重新创建。
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




