SQL Server 变更数据捕获(CDC)

  • 时间:
  • 浏览:0
  • 来源:uu直播快3平台

 

目录

为当前数据库中指定的源表启用变更数据捕获。对表启用变更数据捕获时,应用于此表的每个数据操纵语言 (DML) 操作的记录都将写入事务日志中。变更数据捕获应用应用线程池池将从日志中检索此信息,并将其写入可通过使用一组函数访问的更改表中。

变更数据捕获用于捕获应用到 SQL Server 表中的插入、更新和删除活动,并以易于使用的关系格式提供哪几个变更的完正信息。变更数据捕获所使用的更改表中暗含镜像所跟踪源表列特征的列,一起还暗含了解所趋于稳定的变更所需的元数据。

对表开启了变更捕获然后,对该表的所有DML和DDL操作然后被记录,促使跟踪表的变化。

原文:

所有更改函数: cdc.fn_cdc_get_all_changes_ < capture_instance >

净更改函数: cdc.fn_cdc_get_net_changes_ < capture_instance >

 捕获措施都要跟踪另另俩个多表对象的更改操作,只要开启了变更捕获对性能趋于稳定一定的影响,不怎么在日志读写你这人块,首先它比正常的操作都要进行更多的日志写操作,只要日志的读操作也是很频繁的,有然后将会会引起日志等待图片类型,本来要慎重使用。

 将会文章对我们有帮助,希望我们能给个推荐,谢谢!!!

标签:SQL SERVER/MSSQL SERVER/数据库/DBA/字段/对象更改

 

注意:

对表启用变更数据捕获时,将生成另另俩个多更改表以及另另俩个多或另另俩个多查询函数。更改表充当捕获应用应用线程池池从事务日志中提取的源表更改的存储库。查询函数则用于从更改表中提取数据。哪几个函数的名称按以下措施派生自 capture_instance 参数:

1.将会源表是数据库中第另另俩个多要启用变更数据捕获的表,只要数据库不趋于稳定事务发布,则 sys.sp_cdc_enable_table 还将为数据库创建捕获和清理作业。

它将 sys.tables 目录视图中的 is_tracked_by_cdc 列设置为 1。

2.对表启用变更数据捕获时,SQL Server 代理不须正在运行。只要,没法当 SQL Server 代理正在运行时,捕获应用应用线程池池才会补救事务日志并将条目写入更改表。

测试环境: SQL SERVER 5008 R2,案例库AdventureWorks5008R2

格式: