从Oracle 10g开始,可以通过为undo表空间设置retention guarantee属性,当undo数据文件不能自动扩展,并且undo块不够用时,直接报错,而不覆盖那些Inactive而又没有expired的undo块。
设置retention guarantee属性:
create undo tablespace Name datafile FileName size Size on max MaxSize retention guarantee;
或者
alter tablespace Name retention guarantee;
取消retention guarantee属性:
alter tablespace Name retention noguarantee;