|
【赛迪网-it技术报道】案例: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 /
|