dポイントプレゼントキャンペーン実施中!

毎々お世話になっております。

一時表領域が肥大化してきたため、オンラインで縮小処理をしました。
http://www.roy.hi-ho.ne.jp/montague/lilical-orac …

TEMP01を使用していたため、TEMP02を作成しTEMP01をオフラインにしました。
そしてdropしようとすると失敗しました。エラーが出たらしいのですが、後輩が消してしまったため
わかりません。またTEMP01の物理ファイルも削除してしまったようです。
今の一時表領域をみるとTEMP02がオンラインになっていました。正常に使用もされていましたが、
TEMP01が中途半端に残っています。TEMP01もオンラインになっていますが、サイズは0MBとなっています。TEMP01をオフラインにするSQLを入力するとオフラインになりましたというメッセージが出ます。しかしDROPしようとすると、使用できない旨のエラーがでます。
解決方法が分からなくて困っています。

バックアップファイルもないため困っています。
このような状況になった方はおられますでしょうか?お手数ですがご教授ください。

A 回答 (2件)

こんにちわ。



> DROPしようとすると、使用できない旨のエラーがでます。
一時表領域に紐付いている一時ファイルが削除された状態から問題の
一時表領域を削除したいと言う事でしょうか?
私は同様な状況に陥った事はありませんが、対応方法としては
以下のようになると思います。

1) 一時表領域と一時ファイルの対応を確認する。
 % sqlplus "/ as sysdba"
 SQL> select tablespace_name, file_name from dba_temp_files order by 1,2;

2) 削除する一時表領域に紐付く一時ファイルをOffline 化する。
  (エラーとなるかもしれません)
  SQL> alter database tempfile '一時ファイル名' offline;

3) 削除する一時表領域に紐付く一時ファイルに削除マークを付ける
  SQL> alter database tempfile '一時ファイル名' drop:

4) 問題の一時表領域を
  SQL> drop tablespace temp01;

この回答への補足

すみません。書き方が悪かったです。
TEMPですが、方法として、物理ファイルTEMP02を追加し、TEMP01という物理ファイルを削除することで
TEMPのサイズを縮小しようとしていたようです。そのTEMP01の物理ファイルを削除するときにエラーが発生し、わからなくなり、物理ファイルTEMP01を削除してしまったそうです。

補足日時:2011/10/02 20:57
    • good
    • 1
この回答へのお礼

丁寧にありがとうございます。
3)ですが、物理ファイルがないとエラーにはならないでしょうか?
早速明日実行してみます。

お礼日時:2011/10/02 20:55

こんにちわ。



> TEMPですが、方法として、物理ファイルTEMP02を追加し、TEMP01という
> 物理ファイルを削除することで・・・
と言う事は、1つの一時表領域に一時ファイルを追加して、既存の一時ファイルを
Oracle の機能を使用せずに削除したと言う事でしょうか?
その場合、一時表領域の状態が明らかにおかしいので、別の一時表領域を新たに
作成して、新しく作成した一時表領域を使用するように設定を変更するしか
ないのではないでしょうか?
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す