对于undotbs01.dbf文件太大的处理办法

Work 2010-01-08

-- 创建一个新的小空间的UNDO TABLESPACE
Create UNDO TABLESPACE UNDOTBS2 DATAFILE 'E:\oracle10g\product\10.2.0\oradata\wst10g\UNDOTBS02.DBF' SIZE 100M REUSE AUTOEXTEND ON;
-- 设置新的表空间为系统UNDO_TABLESPACE
Alter SYSTEM SET UNDO_TABLESPACE=UNDOTBS2;
-- Drop 旧的表空间
Drop TABLESPACE UNDOTBS1 INCLUDING CONTENTS;
Select * FROM DBA_TABLESPACES;

完成后删除E:\oracle10g\product\10.2.0\oradata\wst10g\UNDOTBS01.DBF,然后进行出下操作:

-- 创建一个新的小空间的UNDO TABLESPACE
Create UNDO TABLESPACE UNDOTBS1 DATAFILE 'E:\oracle10g\product\10.2.0\oradata\wst10g\UNDOTBS01.DBF' SIZE 100M REUSE AUTOEXTEND ON;
-- 设置新的表空间为系统UNDO_TABLESPACE
Alter SYSTEM SET UNDO_TABLESPACE=UNDOTBS1;
-- Drop 旧的表空间
Drop TABLESPACE UNDOTBS2 INCLUDING CONTENTS;
--查看所有表空间的情况
Select * FROM DBA_TABLESPACES;

完成后删除E:\oracle10g\product\10.2.0\oradata\wst10g\UNDOTBS02.DBF。


如果临时表空间很大处理的方法类似。


限制
Alter DATABASE DATAFILE 'E:\oracle10g\product\10.2.0\oradata\wst10g\UNDOTBS01.DBF' AUTOEXTEND   ON MAXSIZE  300M;