0

我似乎无法使我的 SQL CDC Cleanup Job 的保留时间正常工作。我到处寻找我的答案,但直到现在才找到解决方案。

我做了以下事情: - 在 DB 上激活 CDC

EXEC sys.sp_cdc_enable_db;

激活 CDC 表

EXEC sys.sp_cdc_enable_table @source_schema = N'dbo',     
                             @source_name = N'Person',     
                             @capture_instance = NULL,     
                             @supports_net_changes = 1,    
                             @role_name = NULL,            
                             @index_name = NULL,         
                             @captured_column_list = NULL, 
                             @filegroup_name = NULL;  

然后我检查了我的工作:

EXEC sys.sp_cdc_help_jobs;

并将清理作业保留更改为 2:

EXEC sys.sp_cdc_change_job @job_type = N'cleanup',      -- nvarchar(20)
                           @retention = 2;       -- bigint

据我所知,这应该控制清洁 CDC 表的间隔分钟数。我无法在网上找到任何其他方式如何做到这一点。我的清理作业仍然没有清空我激活 cdc 的 CDC 表。

值得一提的是,我之前在此数据库上激活/停用了 CDC,也许这与清理作业无法正常工作有关?

任何帮助表示赞赏。

BR

4

0 回答 0