none
有关 SQL2008 CDC RRS feed

  • 问题

  • SQL2008 提出CDC 的概念。 在做CDC 审核的时候发现在JOB AGENT 里面只有一个作业,捕获变更数据作业却没有建立成功。关于CDC 相应的一些问题在网上也没有找到相应答案?看看大家谁了解CDC 的一些机制,对事物日志是怎么读取操作。问题2: 在做CDC 时候有这样异常信息: 该日志未截断,因为其开始处的记录是挂起的复制操作或变更数据捕获。请确保日志读取器代理或捕获作业正在运行,或使用 sp_repldone 将事务标记为分布式或捕获。请问大家:我在SSMS里面用什么命令来检查日志读取代理是否运行? 谢谢。


    星光总能为我指引方向
    2011年9月6日 11:53

答案

  • 我在实践中有这样的一个结论:在某个数据库下如果建立起REPL之后再开启CDC。 那么CDC的一个捕获数据变更是不能开启,只有停掉REPL 才能开启CDC的捕获变更数据作业


    星光总能为我指引方向

    Obviously you didn't do your home work:

    Change data capture and transactional replication can coexist in the same database, but population of the change tables is handled differently when both features are enabled. Change data capture and transactional replication always use the same procedure, sp_replcmds, to read changes from the transaction log. When change data capture is enabled on its own, a SQL Server Agent job calls sp_replcmds. When both features are enabled on the same database, the Log Reader Agent calls sp_replcmds. This agent populates both the change tables and the distribution database tables.

    2011年9月8日 13:17

全部回复

  • CDC gets data changes via log reader agent, same as replication. You can check the job in ssms -> sql server agent -> job activity monitor. Books online has details under 'Change Data Capture'.

    2011年9月6日 13:17
  • 我在实践中有这样的一个结论:在某个数据库下如果建立起REPL之后再开启CDC。 那么CDC的一个捕获数据变更是不能开启,只有停掉REPL 才能开启CDC的捕获变更数据作业


    星光总能为我指引方向
    2011年9月8日 6:43
  • 我在实践中有这样的一个结论:在某个数据库下如果建立起REPL之后再开启CDC。 那么CDC的一个捕获数据变更是不能开启,只有停掉REPL 才能开启CDC的捕获变更数据作业


    星光总能为我指引方向
    2011年9月8日 6:43
  • 下次记得先看看联机丛书:

    变更数据捕获和其他 SQL Server 功能


    想不想时已是想,不如不想都不想。
    2011年9月8日 7:52
    版主
  • 我在实践中有这样的一个结论:在某个数据库下如果建立起REPL之后再开启CDC。 那么CDC的一个捕获数据变更是不能开启,只有停掉REPL 才能开启CDC的捕获变更数据作业


    星光总能为我指引方向

    Obviously you didn't do your home work:

    Change data capture and transactional replication can coexist in the same database, but population of the change tables is handled differently when both features are enabled. Change data capture and transactional replication always use the same procedure, sp_replcmds, to read changes from the transaction log. When change data capture is enabled on its own, a SQL Server Agent job calls sp_replcmds. When both features are enabled on the same database, the Log Reader Agent calls sp_replcmds. This agent populates both the change tables and the distribution database tables.

    2011年9月8日 13:17