undo表空间暴长后如何才能取消自动扩展

2012-11-12

  案例:undo表空间原来被设置成了自动扩展,现在已经有10G大小,基于这种情况,应当如何处理?

  解决方法:

  重新建立一个undo2表空间,不要设置为自动扩展,指定最大值,然后切换undo1到这个新的undo2表空间,等到所有事务都移动到undo2以后,删除undo1即可。

  如果原来的undo1上没有活动的事务的话,可以直接删除,重新建立。

  查了一下资料,用一下命令:

  alter database datafile 文件路径 autoextend off;取消自动扩展,

  alter database datafile 文件路径 autoextend on;设置自动扩展。

  也可以实现。

  查看表空间数据文件是否为自动扩展:

  SQL> col FILE_NAME format a40

  SQL> col TABLESPACE_NAME format a20

  SQL> select file_id,file_name,tablespace_name,autoextensible from dba_data_files order by file_id;

  FILE_ID FILE_NAME TABLESPACE_NAME AUT

  ---------- ---------------------------------------- -------------------- ---

  1 C:/ORACLE/ORADATA/ORADB/SYSTEM01.DBF SYSTEM YES

  2 C:/ORACLE/ORADATA/ORADB/RBS01.DBF RBS YES

  3 C:/ORACLE/ORADATA/ORADB/USERS01.DBF USERS YES

  4 C:/ORACLE/ORADATA/ORADB/TEMP01.DBF TEMP YES

  5 C:/ORACLE/ORADATA/ORADB/TOOLS01.DBF TOOLS YES

  6 C:/ORACLE/ORADATA/ORADB/INDX01.DBF INDX YES

  7 C:/ORACLE/ORADATA/ORADB/DR01.DBF DRSYS YES

  8 D:/TEST.DBF TEST NO

  已选择8行。

  说明如下:

  TEST表空间用以下语句创建的一个实验表空间,没有指定AUTOEXTEND ON 参数,所以不是自动扩展。

  SQL> create tablespace test datafile

  2 'd:/test.dbf' size 5M

  3 default storage (initial 1M next 1M pctincrease 0)

  4 /

分享到:
0
相关阅读
友情链接
© 2018 我考网 http://www.woexam.com 中国互联网举报中心 湘ICP备18023104号 京公网安备 11010802020116号
违法和不良信息举报:9447029@qq.com