我已经在我的SQL server 2008数据库中的几个表上启用了CDC。我想改变我可以保留更改历史的天数。
我读到,默认情况下,变更日志在被sys.sp_cdc_cleanup_change_table存储程序删除之前会被保留3天。
有谁知道我怎样才能改变这个默认值,从而使我能够保留更长时间的日志。
![]() |
谦逊的佛珠 · 我国学者在弱引力透镜全天模拟方面取得重要进展· 3 月前 · |
![]() |
温文尔雅的鸵鸟 · 字正腔圆简谱完整版 - 搜狗图片搜索· 7 月前 · |
![]() |
英俊的乌龙茶 · 安阳学院 航空工程学院· 8 月前 · |
![]() |
腹黑的铅笔 · 新浪观影团《寂静之地2》北京大V专场免费抢票 ...· 1 年前 · |
![]() |
淡定的铁板烧 · 人力资源社会保障部办公厅关于举办2016年全 ...· 1 年前 · |
![]() |
谦逊的佛珠 · 我国学者在弱引力透镜全天模拟方面取得重要进展 3 月前 |
![]() |
温文尔雅的鸵鸟 · 字正腔圆简谱完整版 - 搜狗图片搜索 7 月前 |
![]() |
英俊的乌龙茶 · 安阳学院 航空工程学院 8 月前 |
你需要为你的数据库更新 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>