2014-02-26 67 views
1

由於篇幅所限,我只需要在磁盤空間滿之前的幾天內保留我的數據。最佳做法是什麼?如何在Oracle中最近幾天保留數據?

當可用磁盤空間達到特定量時,可以觸發作業嗎?

+0

我們在這裏談論什麼量的數據(即記錄數量,平均記錄大小,表空間大小)? –

+0

當我檢查了表空間的唯一數據文件時,它每天增長2.5TB –

+0

,這可能有助於提及幸運的是,我有日期列可用於檢測舊數據。 –

回答

1

請閱讀partitioning

如果您每天有一個分區的分區,您可以輕鬆地安排一個作業每隔X天刪除最早的分區。

+0

哦,所以我相信我有兩個截然不同的問題:1-Oracle可以檢查磁盤空間是否已滿並且需要清理數據並觸發某項工作?和2 - 清理舊數據的最佳方式。你的回答清楚地表明瞭後面的問題,那麼前者呢? –

+0

我不認爲有這樣一個觸發器提供的Oracle本身,你必須寫一個你自己。另外,我會建議讓需求決定你應該保留多少天,並相應地調整系統的大小,然後進行一個簡單的滾動窗口方案,在這種方案中,保持X nr天數並且每天最大的時間丟棄。 – Ronnis