[oracle]表領域を拡張する方法

oracleデータベースに対してテーブルの変更やデータの追加などを行うとまれに表領域が足りずにエラーとなってしまうことがあります。

データファイルの設定を自動拡張(autoextend)に設定しておけば解決するような話ではあるのですが、負荷が掛かってしまうからなどの理由で自動拡張設定をしていない場合もあると思います。

そういった場合は定期的に表領域がどの程度残っているかを監視して適時拡張するなどの作業を行う必要があります。

表領域を拡張する方法

oracleの表領域を拡張するにはデータファイルを自動拡張するという方法の他に、
データファイルのサイズを変更するという方法と、データファイル自体を追加するという方法があります。

データファイルのサイズを拡張する

-- データファイルのサイズを拡張する
ALTER DATABASE DATAFILE '[/oradata/datafile.dbf]' RESIZE 1000M;

このようにすることでoracleのデータファイルを拡張することができます。

参考:オラクル ちょこっとリファレンス

データファイルを追加する

-- データファイルを追加する
ALTER TABLESPACE [表領域名] ADD DATAFILE '[/oradata/datafile.dbf]' SIZE 512M AUTOEXTEND OFF

データファイルを追加するにはこのようにします。

参考:SHIFT the Oracle