最近某项目突然要增加数据的获取,但是不能改程序、也没有同步的只读库,只好使用CDC来进行尝试。

CDC的启用和停止全部用SQL实现,在这里给出主要的SQL步骤:

/****** Script for SelectTopNRows command from SSMS  ******/
--------------------------------(1.1)启动数据库CDC
USE TestDB
GO
EXECUTE sys.sp_cdc_enable_db;
GO
--------------------------------(1.2)有错误15517则执行
ALTER AUTHORIZATION ON DATABASE::[TestDB] TO [sa] ---------------------------------(1.3)查看是否启用数据库CDC
SELECT is_cdc_enabled,CASE WHEN is_cdc_enabled= THEN 'CDC功能禁用'ELSE 'CDC功能启用'END [描述]
FROM sys.databases
WHERE [name]='TestDB' -------------------------------- (2.1)启动数据表CDC----
USE TestDB
GO
EXEC sys.sp_cdc_enable_table
@source_schema= 'dbo',
@source_name = 'TestTable',
@role_name = NULL
GO
----------------------------------(2.2)查看数据表CDC是否启用----
SELECT name ,
is_tracked_by_cdc ,
CASE WHEN is_tracked_by_cdc = THEN 'CDC功能禁用'
ELSE 'CDC功能启用'
END 描述
FROM sys.tables
WHERE OBJECT_ID= OBJECT_ID('TestTable')
----------------------------------()查询数据------
SELECT TOP * FROM [TestDB].[cdc].[dbo_TestTable_CT];--此表为默认生成 ----------------------------------() 关闭表CDC----
USE TestDB
go
EXECUTE sys.sp_cdc_disable_table
@source_schema = 'dbo',
@source_name = 'TestTable',
@capture_instance = 'dbo_TestTable'
go ----------------------------------()关闭数据库CDC----
USE TestDB;
GO
EXECUTE sys.sp_cdc_disable_db;
GO

参考文章:

https://docs.microsoft.com/zh-cn/previous-versions/sql/sql-server-2008/bb510702(v=sql.100)

https://blog.csdn.net/yenange/article/details/49636215

https://blog.csdn.net/dba_huangzj/article/details/8130448

https://www.cnblogs.com/lyhabc/p/3383484.html

(整理)SQL Server 2008 CDC 功能使用的更多相关文章

  1. SQL Server 2008 CDC增量变更捕获详解

    1 背景: 随着公司业务的成长,数据量也随之的不断增长.随之而来的问题是在做ETL的时候,时间花费也越来越长.为了节省时间开销,我们只想要更新最新的数据,不想要把公司历年所有的数据都进行处理.这种情况 ...

  2. 使用SQL Server 的CDC功能实现数据变更捕获

    USE t; GO --开启某个数据库的CDC功能 exec sys.sp_cdc_enable_db GO --is_cdc_enabled栏位为1代表开启CDC功能了 SELECT is_cdc_ ...

  3. SQL Server ---(CDC)监控表数据(转译)

    一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 实现过程(Realization) 补充说明(Addon) 参考文献(References) ...

  4. SQL Server 2008 SP3简体中文版官方下载

    微软日前公开发布了SQL Server 2008 SP3,用户可以从微软下载中心获取SP服务包和功能包升级.SP3主要包括自SQL Server 2008 SP2以来的累积更新,修复了用户反馈的一些问 ...

  5. SQL Server 2008中的CDC(Change Data Capture)功能使用及释疑

    SQL Server 2008中的CDC(Change Data Capture)功能使用及释疑 关键词:CDC   原文:http://www.cnblogs.com/chenxizhang/arc ...

  6. SQL Server 2008中新增的 1.变更数据捕获(CDC) 和 2.更改跟踪

    概述 1.变更数据捕获(CDC)        每一次的数据操作都会记录下来 2.更改跟踪       只会记录最新一条记录   以上两种的区别:         http://blog.csdn.n ...

  7. SQL Server 2008中新增的变更数据捕获(CDC)和更改跟踪

    来源:http://www.cnblogs.com/downmoon/archive/2012/04/10/2439462.html  本文主要介绍SQL Server中记录数据变更的四个方法:触发器 ...

  8. SQL SERVER 2008数据库各版本功能对比

    微软SQL SERVER 2008数据库有6个版本,分别是数据中心版.企业版.标准版.Web版.工作组版.简易版,有时候购买的时候或需要使用某项功能时,需要了解各个版本的区别,功能差异,很多时候,大部 ...

  9. SQL SERVER 2008 R2 SP1更新时,遇上共享功能更新失败解决方案

    SQL SERVER 2008 R2 SP1更新时,遇上共享功能更新失败的问题,可作如下尝试: 更新失败后,在windows的[事件查看器→应用程序]中找到来源为MsiInstaller,事件ID为1 ...

随机推荐

  1. angular学习2

    1.为了在angular里面使用bootstrap,可以如下操作 (1)停止正在运行的终端指令:ctrl+c (2)在终端里面输入:npm install bootstrap --save (3)在V ...

  2. LimeSDR环境安装与测试

    虚拟机:ubuntu虚拟机建议4g内存,64g硬盘,usb3.0已开启 //否则编译过程耗尽内存 1 换阿里云源(加速)# deb cdrom:[Ubuntu 16.04 LTS _Xenial Xe ...

  3. node有哪些坑?

    const server = http.createServer((req, res) => {} const server = http.createServer((res, req) =&g ...

  4. .net core 使用log4net日志组件

    一个web站点必须要记录日志,否则哪里出错了,完全是黑娃找黑妹,两眼一抹黑. 最常用的就是log4net日志组件.我们可以通过扩展加入日志组件. 第一步:在项目中NuGet log4net包,即 In ...

  5. 面试题--Java

    &与&&区别? &与&&都是逻辑运算符,都是判断两边为真则为真,两边为假则为假,但是&&如果第一个条件不成立的话,后面的将不会再继续执行 ...

  6. Java集合类框架的最佳实践有哪些?

    1.根据应用需要正确选择要使用的集合类型对性能非常重要,比如:假如知道元素的大小是固定的,那么选用Array类型而不是ArrayList类型更为合适. 2.有些集合类型允许指定初始容量.因此,如果我们 ...

  7. Linux运维之shell脚本进阶篇

    一.if语句的使用 1)语法规则 if [条件] then 指令 fi 或 if [条件];then 指令 fi 提示:分号相当于命令换行,上面两种语法等同特殊写法:if[ -f"$file ...

  8. vue 安卓5.1 ios9 兼容性 白屏问题

    // 针对安卓4.4/ios的兼容 import 'babel-polyfill' import Es6Promise from 'es6-promise' require('es6-promise' ...

  9. C#缓存流的使用浅析

    C#缓存流的使用实例:用缓存流复制文件,C#文件处理操作必须先导入命名空间: using System.IO; ///在按钮的Click事件中添加如下代码: private void button1_ ...

  10. Python之os模块和sys模块

    OS模块:print(os.getcwd())os.chdir('..') #返回上一层目录print(os.getcwd()) os.makedirs('xxxx') #生成多级递归目录os.mkd ...