我已经在我的SQL server 2008数据库中的几个表上启用了CDC。我想改变我可以保留更改历史的天数。
我读到,默认情况下,变更日志在被sys.sp_cdc_cleanup_change_table存储程序删除之前会被保留3天。
有谁知道我怎样才能改变这个默认值,从而使我能够保留更长时间的日志。
![]() |
睡不着的橡皮擦 · GridView表头排序方法设置 - ...· 3 周前 · |
![]() |
深情的绿豆 · 女嬰出生3天回家途中遭遇車禍腦出血 媽媽腦死 ...· 1 月前 · |
![]() |
豁达的枕头 · 温州9大"贵族学校"学费曝光!你读得起吗?· 1 年前 · |
![]() |
微笑的松球 · pycharm安装pyqt5-tools_w ...· 1 年前 · |
![]() |
暴走的伤疤 · 1965例急性中毒多中心前瞻性临床流行病学调查· 2 年前 · |
你需要为你的数据库更新 cdc_jobs.retention 字段。在至少有一个表为 CDC 启用之前,cdc_jobs 表中的记录不会存在。
-- modify msdb.dbo.cdc_jobs.retention value (in minutes) to be the length of time to keep change-tracked data update [retention] = 3679200 -- 7 years sys.databases d inner join msdb.dbo.cdc_jobs j on j.database_id = d.database_id and j.job_type = 'cleanup' and d.name = '<Database Name, sysname, DatabaseName>';
用你的数据库名称替换
。<Database Name, sysname, DatabaseName>