sql2008cdc变更数据捕获.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Sql Srver 2008 CDC 变更数据捕获 1概述 变更数据捕获(CDC )用于捕获应用到SQL Server表中的插入、更新和删除活动,并以易于使用 的关系格式提供这些变更的详细信息。变更数据捕获所使用的更改表中包含镜像所跟踪源表列结构的列, 同时还包含了解所发生的变更所需的元数据。 2工作原理 变更数据捕获的更改数据源为 SQL事务日志。 在将插入、更新和删除应用于跟踪的源表时,将会在日志中添加说明这些更改的项。 日志用作变更数据捕获进程的输入来源。 它会读取日志,并在跟踪的表的关联更改表中添加有关更改的信息。 将提供一些函数,以枚举在更改表中指定范围内发生的更改,并以筛选的结果集的形式返回该值。 通常,应用程序进程使用筛选的结果集在某种外部环境中更新源表示形式。 3测试报告 3.1更改表结构说明 当有操作更改了启用了 CDC的表的数据时,捕获作业将操作数据和此操作的信息保存到当前表的更改 表,更改表主要包括: __$start_lsn列标识为更改指定的提交日志序列号 (LSN) _$seqval 对同一事务中进行的其他更改进行排序 __$update_mask列是一个可变的位掩码,每个捕获列都有一个对应的定义位 —$operation 操作类型:1 =删除,2 =插入,3 =更新(前),4 =更新(后) 以及捕捉的各个列 3.2原始数据 源表(表名operator) 更改记录表 3.3新增记录效果 如果当前操作是插入或删除,更改表将会增加一条记录,保存了插入或删除的数据 insert into operator(id , name , password) values(17 , lisj lisimm ) 源表 rrarrre password zhargsan zanmm lisi lisjimn 更改记录表 _Sstartjsn 一Sendjsn _Sopera:ion _Supdate.mask id n-ame pa^SAond 1 : WUUWVJkJVUUWlJ l/WUlFt ; | NULL w. UlJw wUU J^IJvUUlJU 1/MrVU J 2 0x07 16 zhanasan zsanmm 2 j nnn one o 7 nr.vnv. 匚 gm 上 皿 LrUVl/UrU-jO LrUVULTUv r NULL 怙 nAAAnrn 匚 an 厲工 W- uwVWUU J^ULrVVLrUJr 2 0x07 17 lL$i lisimm 3.4删除记录效果 如果当前操作是插入或删除,更改表将会增加一条记录,保存了插入或删除的数据 delete form operator where id =16 源表 id 1 name password 1 ! 17 ; h$i lisimm 更改记录表 _5start_sri _Sendjsn 1 _Sseqval _Soperstion __5update_rnask id name password 1 | NULL rl.1-1 l nn.-i1=1 TiQn n Hp n n-| rt np T UtUVLMJUUdmUWU肌 IrtuVUJ 2 (k07 IS zhangsan zsanmm 2 nAniVMi 11 wnnAn i c rwii 廿 LAItrVLrL/Vvw□ v Urw UW vULj*-- NULL % M nnAT 工 Q 工匚-TAm Li 4_i WU V v-wU WW U Urv V 厂 vvWU1 _ c07 17 lisi hsimm 3 ri fUWWl 3 □ FMWW1R H rursfi j uXAAjtL u uAi? J JaAv L 订m a.—JJ Li Li — NULL ri ruvpnriri n qqfWWW口比HAH勺 UiA U u LJ U U ^Li ?■ r_- u U L Li sTk/L U Z. 1 0x07 IE zhargsan zsaniTim 3.5修改记录效果 如果当前操作是更改,更改表将会增加两个记录,一条保存更改前的数据,另一条保存更改后的数据, 可以根据—$start_lsn,在关联表cdc.lsn_time_mapping中查询出当前操作的事务ID,开始时间,结束时 间以及事务开始日志序列号 update operator set name = wangwu where id=17 源表 c nane I passviOfid l] 1 i 1 了 *% i^iai???■■????????!■■■■■ I wangwu lisimm 更改表 _Ssiart」sn _£end」v _Sseqval _Sopenation _5up

文档评论(0)

xiaozu + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档