特别注意:此办法只用于实在没有办法的时候,因为需要加入oracle中的隐含参数,慎用!!!
1. 先查一下是什么在占用undo
SYS@ENMOEDU>select segment_name,owner,tablespace_name,status from dba_rollback_segs where tablespace_name='UNDOTBS1' and status = 'ONLINE'; SEGMENT_NAME OWNER TABLESPACE_NAME STATU --------------------- ------ ------------------ ------ _SYSSMU6_1263032392$ PUBLIC UNDOTBS1 ONLINE
2. 在pfile参数文件中加入隐含参数:_corrupted_rollback_segments=‘_SYSSMU6_1263032392$’
3. 指定pfile启动数据库
SYS@ENMOEDU> startup pfile='/u01/app/oracle/product/11.2.0/db_1/dbs/initENMOEDU.ora' ORACLE instance started.
4. undo表空间可以删除
SYS@ENMOEDU> drop tablespace undotbs1; Tablespace dropped.