[发明专利]一种基于CDC方式的SQL Server数据库增量同步实现方法及系统在审
申请号: | 201910514708.1 | 申请日: | 2019-06-14 |
公开(公告)号: | CN110222121A | 公开(公告)日: | 2019-09-10 |
发明(设计)人: | 李德刚;曹景亮;李朝铭 | 申请(专利权)人: | 浪潮软件股份有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F8/60 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 阚恭勇 |
地址: | 250100 山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据库 数据库表 同步领域 信息数据 增量变化 增量数据 传输 | ||
1.一种基于CDC方式的SQL Server数据库增量同步实现方法,其特征在于,
通过开启SQL Server CDC功能,从数据库中提取数据库表的增量变化数据,进而结合CMSP传输实现SQL Server数据库的增量数据提取以及同步。
2.根据权利要求1所述的方法,其特征在于,
SQL Server提供了CDC机制用于捕获增量数据,在事务提交时,数据库守护进程会依据日志变化监听并捕获增量数据;数据库的变化都记录在数据库日志中,CDC基于日志实现。
3.根据权利要求2所述的方法,其特征在于,
当基于CDC方式做增量抽取时,会首先记录一个起始时的序列号(__$start_lsn),当查询增量结束时会记录一个结束时的序列号(__$start_lsn)。
4.根据权利要求3所述的方法,其特征在于,
当下次查询增量时,会用上一次结束时的序列号(__$start_lsn)做为起始序列号继续进行查找增量数据。
5.根据权利要求4所述的方法,其特征在于,
工作步骤如下:
1)SQL Server代理进程异步扫描日志,监听变化,抽取变化信息,并将其插入到对应的CDC更改表中;
2)在对应更改表中每条数据都会记录一个事务日志开始序列号__$start_lsn和操作类型__$operation;
3)最后,通过处理这些记录实现源系统与目标系统数据的一致性。
6.一种基于CDC方式的SQL Server数据库增量同步实现系统,其特征在于,
主要由三个组件组成:抽取组件、CMSP、入库组件;
其中,
抽取组件,实现从SQL Server数据库抽取增量数据,将数据放入到CMSP中;
CMSP,负责数据消息的中间传输;
入库组件,从CMSP中获取数据,并将数据插入到目的库中。
7.根据权利要求6所述的系统,其特征在于,
安装实施步骤如下:
(1)开启SQL Server数据库代理服务;
(2)开启SQL Server数据库CDC功能;
(3)开启需要同步的表的CDC功能;
(4)首先安装数据抽取组件、入库组件、CMSP;
(5)配置数据抽取组件配置文件,配置需要采集的源数据库信息、采集的表信息、配置发送的CMSP信息;
(6)配置入库组件;
(7)配置CMSP;
(8)启动CMSP,并创建Topic信息;
(9)启动入库组件,最后启动数据采集组件;
(10)同步组件实时将源库数据同步到目的库。
8.根据权利要求7所述的系统,其特征在于,
在源库前置机服务器部署抽取组件、CMSP以实现数据的采集。
9.根据权利要求7或8或所述的系统,其特征在于,
在入库服务器部署入库组件、CMSP,以实现采集数据的入库。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮软件股份有限公司,未经浪潮软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910514708.1/1.html,转载请声明来源钻瓜专利网。