select segment_name,status,tablespace_name from dba_rollback_segs where status not in ('ONLINE','OFFLINE') and tablespace_name='UNDOTBS5';
SEGMENT_NAME
------------------------------------------------------------------------------------------
STATUS
------------------------------------------------
TABLESPACE_NAME
------------------------------------------------------------------------------------------
_SYSSMU1$
NEEDS RECOVERY
UNDOTBS5
_SYSSMU117$
NEEDS RECOVERY
UNDOTBS5
_SYSSMU750$
NEEDS RECOVERY
UNDOTBS5
_SYSSMU780$
NEEDS RECOVERY
UNDOTBS5
发现有4个undo 段不正常。
无法drop
16:39:16 sys@bt>alter rollback segment "_SYSSMU1$" offline ;
Rollback segment altered.
Elapsed: 00:00:00.01
16:39:45 sys@bt>alter rollback segment "_SYSSMU117$" offline ;
Rollback segment altered.
Elapsed: 00:00:00.00
16:39:45 sys@bt>alter rollback segment "_SYSSMU750$" offline ;
Rollback segment altered.
Elapsed: 00:00:00.00
16:39:45 sys@bt>alter rollback segment "_SYSSMU780$" offline ;
Rollback segment altered.
Elapsed: 00:00:00.01
16:39:45 sys@bt>
16:39:46 sys@bt>
16:39:46 sys@bt>
16:40:00 sys@bt>drop rollback segment "_SYSSMU1$" ;
drop rollback segment "_SYSSMU117$" ;
drop rollback segment "_SYSSMU1$"
*
ERROR at line 1:
ORA-30025: DROP segment '_SYSSMU1$' (in undo tablespace) not allowed
Elapsed: 00:00:00.02
16:40:00 sys@bt>drop rollback segment "_SYSSMU750$" ;
drop rollback segment "_SYSSMU117$"
*
ERROR at line 1:
ORA-30025: DROP segment '_SYSSMU117$' (in undo tablespace) not allowed
需要将undo_management改为manual 后,使用隐含参数
_CORRUPTED_ROLLBACK_SEGMENTS=(_SYSSMU1$,_SYSSMU117$,_SYSSMU750$,_SYSSMU780$)
然后可以顺利的删除。
drop rollback segment "_SYSSMU1$" ;
drop rollback segment "_SYSSMU117$" ;
drop rollback segment "_SYSSMU750$" ;
drop rollback segment "_SYSSMU780$" ;
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/8135069/viewspace-687465/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/8135069/viewspace-687465/