如果多余的空间比较多,就可以适当追加一个大的回滚段给表空间使用,从而避免上述的错误。你也可以用以下语句
来检测一下rollback segment的竞争状况:
select class,count from v$waitstat where calss in(‘system undo header’,’system undo block’,’undo
header’,’undo block’);和
select sum(value) from v$sysstat where name in (‘db_block_gets’,’consistents gets’);
如果任何一个class in count/sum(value)大于1%,就应该考虑增加rollback segment。
相应的英文如下:
cause:failed to allocate extent from the rollback segment in tablespace
action:use the alter tablespace add datafile statement to add one or more files to the specified
tablespace.
ora-01652:unable to extend temp segment by num in tablespace name
产生原因:oracle临时段表空间不足,因为oracle总是尽量分配连续空间,一但没有足够的可分配空间或者分配不连
续就会出现上述的现象。