這些資料庫塊可以被重用嗎?

empo007發表於2008-04-21

前幾天看到同事關於刪除某些大表資料的方案,看後覺得有些疑問......

[@more@]

同事的方案是這樣的:首先將要刪除的表的資料的rowid記錄在某個臨時表中,然後根據該臨時表的rowid對相關表進行delete,採用批次delete,然後批次提交的方式。

該方案對普通大表進行資料刪除不失為一個好辦法,但是他將要處理的表是分割槽表,這些分割槽表是以時間(YYYYMM)進行分割槽的,而刪除的資料也是以時間作為標準的,那麼新的資料能夠使用這些已經被刪除資料的資料塊嗎?不要忘了,這些資料塊是屬於那些不需要的分割槽對應的SEGMENT的。

說明:不使用DROP和TRUNCATE分割槽的方式是因為這些方式會產生libaray cache lock等DDL鎖,進而影響應用。

已經向同事說明我的想法,他也認可我的想法,呵呵,是不是對這種分割槽表必須使用DDL的方式清理空間了呢?

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/85922/viewspace-1002802/,如需轉載,請註明出處,否則將追究法律責任。

相關文章