gpt4 book ai didi

sql-server-2008 - T-SQL 更改数据捕获日志清理

转载 作者:行者123 更新时间:2023-12-01 11:51:49 25 4
gpt4 key购买 nike

我在我的 SQL Server 2008 数据库中的几个表上启用了 CDC。我想更改我可以保留更改历史记录的天数。

我读到默认情况下更改日志会保留 3 天,然后它们会被 sys.sp_cdc_cleanup_change_table 存储过程删除。

有谁知道如何更改此默认值,以便我可以将日志保留更长时间。

谢谢

最佳答案

您需要更新数据库的 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
j
set
[retention] = 3679200 -- 7 years
from
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>使用您的数据库名称。

关于sql-server-2008 - T-SQL 更改数据捕获日志清理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10820827/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com