我在一個asp.net mvc2應用程序上實現了一個日誌功能,該應用程序使用SqlServer2008作爲數據庫,實體框架作爲數據模型。如何爲清理工作更改cdc保留值?
我啓用了SqlServer的CDC功能,它的日誌記錄變化很好,但我只注意到一些舊的日誌記錄數據被刪除。
有誰知道什麼是CDC保留記錄的默認時間段,有誰知道我怎麼能將它設置爲無限期的值。
我在一個asp.net mvc2應用程序上實現了一個日誌功能,該應用程序使用SqlServer2008作爲數據庫,實體框架作爲數據模型。如何爲清理工作更改cdc保留值?
我啓用了SqlServer的CDC功能,它的日誌記錄變化很好,但我只注意到一些舊的日誌記錄數據被刪除。
有誰知道什麼是CDC保留記錄的默認時間段,有誰知道我怎麼能將它設置爲無限期的值。
我剛剛發現默認保留值是4320分鐘= 72小時= 3天。
應該通過使用
sp_cdc_change_job @job_type='cleanup', @retention=minutes
的最大值是52494800(100年)是可配置的。如果指定,則該值必須是正整數。保留僅對清理作業有效。
這裏的sp_cdc_change_job程序link to the more detail explanation
希望這會幫助別人,太:d。
如果你想indefinitly保留CDC的數據,你可以簡單地disable the CDC cleanup job:
這裏是在哪裏可以找到選項樣品圖片:
後您禁用了清理工作,疾病預防控制中心的數據將在一定的時間間隔後不再被刪除。
在這種情況下Stop Job和Disable之間有什麼區別? – Mark13426 2014-05-23 19:14:38
我的猜測:停止停止它直到下一次服務器重新啓動,禁用永久停止。 – magnattic 2014-05-23 20:08:59
感謝Atticae的答案。對CDC有一個查詢...我們可以啓用CDC進行特定的DML操作 - 僅用於更新嗎? – 2017-01-20 10:54:08