Oracleが表領域を削除する方法

Oracleで表領域をパージする主な方法は次のとおりです。

  1. 不要なテーブルやインデックスを削除することで表領域の領域を解放できます。DROP TABLE ステートメントと DROP INDEX ステートメントを使用して、テーブルとインデックスを削除できます。
  2. TRUNCATE TABLE コマンドを使用してテーブルのデータを削除し、テーブルの領域を解放します。TRUNCATE TABLE コマンドは DELETE コマンド보다高速です。これは削除行のログを取らず、領域を即座に解放できるためです。
  3. ALTER TABLE文を使用してテーブルまたはインデックスを別の表領域に移動する。または、ALTER TABLE … MOVE文を使用して、テーブルまたはインデックスをある表領域から別の表領域に移動でき、その移動処理中に未使用領域を解放するためにテーブルまたはインデックスの再編成を行うこともできる。
  4. ALTER TABLE … SHRINK SPACEを使用してテーブルスペースを縮小します。このステートメントはテーブルまたはインデックスを再編成し、未使用のスペースをテーブルスペースに返します。
  5. 表領域圧縮機能を使用して表領域を圧縮します。ALTER TABLESPACE ステートメントを使用して表領域圧縮を有効にできます。また、COMPRESS オプションを使用して表領域内の表とインデックスを圧縮できます。
  6. ALTER TABLE … ENABLE ROW MOVEMENT ステートメントを使用して行の移動を許可します。行の移動が有効になったら、ALTER TABLE … SHRINK SPACE ステートメントを使用して行を移動し、使用されていない領域を解放できます。

テーブルスペースのクリーンアップ操作を実行する前に、重要なデータの誤削除を防ぐために関連データのバックアップを作成する必要があります。

bannerAds