2016-05-16 14 views
0

OBFEED_STMT_DTLという名前のテーブルがあり、その中に14GBのデータがあります。今私は削除sqlを使用して、そのテーブルのデータの約50%を削除し、したがって私はそのサイズが7GBになると予想しています。期待どおりにデータが削除されましたが、テーブルのサイズは変更されません。だから、私はthoeseテーブルでshrinkspaceを実行すると思った。私はそれを行うために以下のsqlsを使用しました。oracle-30036で縮退スペースが失敗しています

alter table OBFEED_STMT_DTL enable row movement; 
alter table OBFEED_STMT_DTL shrink space; 
alter table OBFEED_STMT_DTL disable row movement; 

それは時間以上かかりましたし、最後に、私は以下のエラーメッセージが表示されました:

alter table OBFEED_STMT_DTL shrink space 
* 
ERROR at line 1: 
ORA-30036: unable to extend segment by 8 in undo tablespace 'UNDOTBS1' 

あなたはどのように私はこの問題を解決するために先に行くことができます私を助けていただけますか?

おかげで、 ヴェンカト

+0

を "神託のスペースを再利用" する方法は、おそらくあなたがする必要がありますUNDO表領域のサイズを増やすか、または少ししか自動拡張しないようにしてください。 – Lunc

答えて

-1

このエラーが発生した場合、それは十分にその可能性:

(1)あなたのUNDO表領域が自動拡張に設定されている

(2)ファイルシステムがいっぱいです。あなたは、私がここで何を意味するか見ることができます

http://international-dba.blogspot.co.uk/2012/09/ora-30036.html

EDIT

https://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:54178027703899

+0

私のUNDO表スペースは自動拡張ではありません。私のファイルシステムがいっぱいになる確率は非常に低いです。同じことをする代替案があるかどうか分かりますか?私は7GBのスペースを縮小するためにどれくらいの時間がかかるのか分かりますか? –

関連する問題