- ベストアンサー
表領域に追加したファイルの削除
教えてください。 DB作成時にデフォルトで作成されていた「TEMP」と「CWMLITE」の表領域に誤ってデータファイルを追加してしまいました。 (TEMP02.dbf、CWMLITE02.dbfという風に) 追加したファイルを削除するには該当のデータファイルを オフラインにして実際にOS上からファイルを削除するという 手順で問題無いのでしょうか? それともOracle側でさらに処理が必要でしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
9iでも10gでも 1.該当データファイルをファイルをオフライン 2.該当データファイルをOracleコマンドで削除 3.該当データファイルをOS上から削除 という手順でOKです。(10gの場合は2,3をOracle上で同時にできるだけです。) それより問題は2.です。表領域の中の表が使っている データファイルだったりすると簡単には該当データファイルだけを 削除することはできません。 該当データファイルを使っている表を何か調べてそれを別表領域に 移動して、誰も該当データファイルを使っていない状態にしてから 削除してやる必要があるので非常にややこしいです。 (TEMP表領域は大丈夫だと思いますが) 誤って追加した直後に削除であればまだどこのテーブルでも使っていない可能性が 高いのでおそらく削除できるでしょうか、どこかのテーブルで使われている場合は connect /as sysdba select owner,segment_name from dba_segments where tablespace_name = 'CWMLITE'; で該当表領域に存在するセグメントを全部別表領域に移してから する方がよいかと思います。 (ただ、これも非常にサイズが大きいと大変ですが...)
その他の回答 (1)
- ishi7474
- ベストアンサー率32% (71/216)
Oracle9iか10gのどちらかで、対応方法は異なります。 詳しくは管理者ガイドを参照下さい。