1、 修改INIT
#rollback_segments=(这个地方不用更改) 添加_corrupted_rollback_segments=(rbs01) 2、Startup mount
3、alter database datafile ‘d:\\oracle\\oradata\\t8i\\rbs01.dbf’ offline drop; 4、recover database ; 5、alter database open ; 6、drop rollback segment rbs0;
7、drop tablespace rbs including contents; 8、重建新的回滚表空间及回滚段,并联机。 9、shutdown abort 10、再修改INIT
rollback_segments=(default,rbs01)
将_corrupted_rollback_segments=(rbs01)去掉。 11、startup
以下是创建回滚段的SQL
CREATE TABLESPACE NEWRBS
DATAFILE 'D:\\ORACLE\\ORADATA\\ORCL\\NEWRBS.DBF' SIZE 50M AUTOEXTEND ON NEXT 5M MAXSIZE UNLIMITED PERMANENT
DEFAULT STORAGE(INITIAL 512K NEXT 512K MINEXTENTS 8 MAXEXTENTS 4096 PCTINCREASE 50)
MINIMUM EXTENT 512K LOGGING ONLINE /
CREATE PUBLIC ROLLBACK SEGMENT NEWRBS01 TABLESPACE NEWRBS
STORAGE(INITIAL 512K NEXT 512K MINEXTENTS 8 MAXEXTENTS 4096 OPTIMAL 4M) /
ALTER ROLLBACK SEGMENT NEWRBS01 ONLINE /
第二方法:
进入SVRMGRL> STARTUP MOUNT;
SELECT SEGMENT_NAME,OWNER,TABLESPACE_NAME,STATUS FROM DBA_ROLLBACK_SEGS ;
(查看查询结果:OWNER为PUBLIC的回滚段不受init.ora参数影响) SHUTDOWN ABORT;
1、 修改INIT
rollback_segments=(system) (说明:回滚段在线参数)
添加_corrupted_rollback_segments=(不能使用的回滚段,逗号分割) (回滚段不在线参数) 2、Startup mount
3、alter database datafile ‘d:\\oracle\\oradata\\t8i\\rbs01.dbf’ offline drop; 4、recover database ; 5、alter database open ; 6、drop rollback segment rbs0;
(需要重复执行,删除rbs0 rbs1 rbs2……) 7、drop tablespace rbs including contents; 8、重建新的回滚表空间及回滚段,并联机。 9、shutdown abort 10、再修改INIT
rollback_segments=(default,rbs01) (使用新创建的回滚段) 将_corrupted_rollback_segments=(rbs01)去掉。 11
startup
、
相关推荐: