SQL CDC保留时间(清理作业)工作不正常
我似乎无法使SQL CDC清理作业的保留时间正常工作。我到处寻找我的答案,但直到现在才找到解决办法 我做了以下事情: -在数据库上激活CDCSQL CDC保留时间(清理作业)工作不正常,sql,sql-server,cdc,retention,Sql,Sql Server,Cdc,Retention,我似乎无法使SQL CDC清理作业的保留时间正常工作。我到处寻找我的答案,但直到现在才找到解决办法 我做了以下事情: -在数据库上激活CDC EXEC sys.sp_cdc_enable_db; 激活CDC表 EXEC sys.sp_cdc_enable_table @source_schema = N'dbo', @source_name = N'Person',
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该作业的日志中是否有任何内容?@BenThul Nope,在SQL作业“cdc.DB_cleanup”中没有历史记录,只有我手动启动它的条目,以查看它是否清理了cdc表。