我在新建的一个表空间里维护数据,而UNDOTBS01.DBF这个文件特别的大(好像是有2G多了,而表空间好像还不足100M呢)?
为什么?
如何处理(具体做法)?
为什么?
如何处理(具体做法)?
解决方案 »
- 不安装客户端,需要执行【本地Net服务名配置】吗?
- oracle不完全数据恢复问题,请指教
- SQL 语句怎么写呢?
- 帮忙看一下存储过程哪里不对?
- ORACEL 10g 如何权限设置?
- odp for .net 连接oracle非中文字符集的数据库时,数据为中文字符时,读写都是乱码?
- 刚到Oracle版本.准备天天送分:顺便学习,第四个问题:SQL 中的"sp_executesql" Oracle 是怎么写的呢??
- 如何启动和停止ORACLE的应用服务器
- Oracle 8.1.5安装时出错,帮帮我该怎么办?
- 怎么查询每一天的第一条记录,和最后一条记录
- 急求!!
- 存储过程-形参为out模式的传值与传引用的区别
不知道你的数据库是不是oracle 9201的。这个版本有这样一个bug,可行方案是:
禁止其增长
然后收缩表空间!
1.升级到9205
2.禁止undo tablespace自动增长如果要缩小现在的undo tablespace,则:
-- Create new undo tablespace with smaller size.
SQL> create undo tablespace UNDO_RBS1 datafile 'undorbs1.dbf' size 100m;-- Set new tablespace as undo_tablespace
SQL> alter system set undo_tablespace=undo_rbs1;-- Drop the old tablespace.
SQL> drop tablespace undo_rbs0 including contents.Symptoms
Undo tablespace continues to increase in size.
Cause
+ The undo tablespace has Autoextend On specified.+ The Logic used by AUM is :1) A new extent will be allocated from the undo tablespace.
2) If failed, try stealing an expired extent from another undo segment. This
involves shrinking from the other segment and adding to the current undo
segment.
3) If failed, try reuse an unexpired extent from the current undo segment.
4) If failed, try stealing an unexpired extent from another undo segment.
5) If all failed, report an "Out-Of-Space" error.+ Current AUM segment extend algorithm will grow the segment before trying to
reuse expired extents of other segments. If it is an extensible undo tablespace,
the tablespace may continue to grow. + Though Ideally it should, perform auto extension of the undo tablespace only
after the stealing of expired extents but before stealing unexpired extents. + This problem is documented in Bug 2660394 which is fixed in 9.2.0.5