表領域拡張
表領域の使用量が上がってくると、データファイルを拡張することで対処する。
データファイルは自動拡張( autoextend )が当たり前になってきているが、
もし自動拡張が負荷の高い処理中に行われると、パフォーマンスに悪影響を
与えてしまう可能性が懸念される。そこで今回は手動での拡張手順を紹介する。
よって遅延が許されないクリティカルなシステムなら、自動拡張に設定されていても、
負荷の低いタイミングで手動拡張しておくのもひとつの手だ。
手動追加方法
HOGE 表領域は 2 つのデータファイル hoge01.dbf、hoge02.dbf で
構成されているが hoge02.dbf のサイズを 100M から 500M へ増やす場合。
(1) 表領域とデータファイルの事前確認
SQL> select tablespace_name, file_name, status, bytes/1024/1024 mbytes, increment_by, autoextensible, online_status from dba_data_files where tablespace_name = 'HOGE'; TABLESPACE FILE_NAME STATUS MBYTES INCREM AUTOEX ONLINE ---------- ------------------- ---------- ------ ------ ------ ------ HOGE /data/hoge01.dbf AVAILABLE 500 12800 YES ONLINE HOGE /data/hoge02.dbf AVAILABLE 100 12800 YES ONLINE
(2) 既存のデータファイルを拡張
データファイルを 100MB から 500MB へ拡張
SQL> alter database datafile '/data/hoge02.dbf' resize 500M; データベースが変更されました。
(3) 表領域とデータファイルの事後確認
SQL> select tablespace_name, file_name, status, bytes/1024/1024 mbytes, increment_by, autoextensible, online_status from dba_data_files where tablespace_name = 'HOGE'; TABLESPACE FILE_NAME STATUS MBYTES INCREM AUTOEX ONLINE ---------- ------------------- ---------- ------ ------ ------ ------ HOGE /data/hoge01.dbf AVAILABLE 500 12800 YES ONLINE HOGE /data/hoge02.dbf AVAILABLE 500 12800 YES ONLINE
データファイル hoge02.dbf が正しく拡張された。