DBA_FREE_SPACEについて
Oracleのビュー、DBA_FREE_SPACEの見方を教えてください。
手持ちのデータベースで、エクステントが発生しているものがあり、気になったのでこれを再構築しようと思いました。
手順としては、
1.現状のデータベースをエクスポート(FULL,COMPRESS=Y)
2.テーブル、インデックスを全てドロップ
3.テーブルスペースをドロップ
4.テーブルスペースを再構築
(容量は余裕があったので、初期に作成時と同じスクリプトで)
(既存のデータファイルは消さずにreuseオプションを指定)
5.テーブル、インデックスをINITIAL EXTENTSを現状の容量より上の値に調整。
6.テーブル・インデックスの再作成
7.データのインポート
8.全オブジェクトの再コンパイル
の順に実施しました。
作業後、DBA_SEGMENTSより全テーブル・インデックス
にextentが発生していない状態になったことは確認できたのすが、
DBA_FREE_SPACEを見ると、テーブルスペースがあたかも二つに分割されて使われているように
表示がされました。(下記参照)
SQL> select * from dba_free_space where tablespace_name ='TB1'
TABLESPACE_NAME FILE_ID BLOCK_ID BYTES BLOCKS RELATIVE_FNO
--------------- ------- -------- ----- ------ ------------
TB1 9 12981 40960 5 9
TB1 9 13001 103219200 12600 9
この状態による悪影響としてはどのようなものがありますか?
また、この状態を解消する方法があれば教えてください。
(CREATE TABLESPACEを"reuse"でやったのがまずかったのでしょうか?)
環境は
Oracle8.0.6.0.0(Solaris)
Oracle8.1.6.2.0(Solaris)
の2点で同様の現象を確認しています。
以上、よろしくお願いします。