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

2008-04-18 10:36:12.0     推荐:0    收藏:0    评论:0     来源:赛迪网
案例: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条评论  点击查看更多评论
  • 网友评论仅供网友表达个人看法,并不表明e800同意其观点或证实其描述
我想发表评论:
用户名密码
  • 匿名发表
    验证码: