ITPUB??ì3
12月微软Hyper-V虚拟化沙龙主题征集
ITPUB论坛 » Oracle专题深入讨论 » RBS空间为什么不自动减少?

标题: RBS空间为什么不自动减少?
离线 Arrayflyuser
钓不到猫的鱼


精华贴数 0
个人空间 0
技术积分 98 (17123)
社区积分 1 (35783)
注册日期 2004-6-22
论坛徽章:0
      
      

发表于 2004-12-1 10:38 
RBS空间为什么不自动减少?

前一阵子,因为RBS空间不够,我重新创建了RBS空间和ROLLBACK SEGMENT。

但是,现在运行一些报表发现: 正常完成报表后,RBS空间并不减少(在运行报表时,增长了很大一部份)。并且在Sesssion自动断了或者手工Kill的情况下还是这样。

如我的RBS空间原本6G,运行报表后,减少500M,变成约5.5G,那么,这个数值会一直这样而不减少,久而久之,空间又足了。

我创建rollback Segment的语句应该是没有问题的。我已经设置好了optimal 选项。

原因不知道,不知道哪位兄台遇到过这样的问题或者知道这个原因没有,还请赐教。



附我的创建Rollback segment的语句:
create PUBLIC rollback segment r01 tablespace rbs STORAGE ( INITIAL 100K NEXT 100K minextents 10 maxextents 5000000000 optimal 10m);


__________________
~~~~一天又一天; My QQ: 199637170
只看该作者    顶部
离线 anbb2
秋日



精华贴数 0
个人空间 0
技术积分 122 (14432)
社区积分 4 (17357)
注册日期 2003-8-25
论坛徽章:0
      
      

发表于 2004-12-1 11:22 
原因嘛,说起来烦,你就麻烦一下,写个脚本shrink一下


只看该作者    顶部
离线 flyuser
钓不到猫的鱼


精华贴数 0
个人空间 0
技术积分 98 (17123)
社区积分 1 (35783)
注册日期 2004-6-22
论坛徽章:0
      
      

发表于 2004-12-1 12:36 
主要问题有两个

1、为什么运行一张报表需要这么大的空间,几G的空间。
2、RBS空间为什么不自动Shrink To optimal

我无法解释。


__________________
~~~~一天又一天; My QQ: 199637170
只看该作者    顶部
离线 flyuser
钓不到猫的鱼


精华贴数 0
个人空间 0
技术积分 98 (17123)
社区积分 1 (35783)
注册日期 2004-6-22
论坛徽章:0
      
      

发表于 2004-12-2 10:00 
看来没人知道了

郁闷中,呵呵


__________________
~~~~一天又一天; My QQ: 199637170
只看该作者    顶部
离线 flyuser
钓不到猫的鱼


精华贴数 0
个人空间 0
技术积分 98 (17123)
社区积分 1 (35783)
注册日期 2004-6-22
论坛徽章:0
      
      

发表于 2004-12-2 16:23 
问题终于解决了!

问题的原因实际上非常简单!只是查找的过程非常郁闷,哭。几天时间啊。

RBS空间是可以重用的。所以,问题应该不是出在RBS空间上。

那么,问题可能是出在报表上,我通过调出报表运行时占用的RBS Rollback Segment所执行的SQL语句,发现
报表一直在执行一段“UPDATE CUX_REP_GL_BOOK_TEMP”语句。

通过查看这段语句,最后发现它重复运行了N次。

通过修改,报表由原来的1-2小时变成20秒钟内运行完成,RBS空间也基本上不见增长了。


__________________
~~~~一天又一天; My QQ: 199637170
只看该作者    顶部
离线 watershed
高级会员


精华贴数 0
个人空间 0
技术积分 2361 (677)
社区积分 1170 (890)
注册日期 2004-4-3
论坛徽章:3
会员2006贡献徽章授权会员每日论坛发贴之星   
      

发表于 2004-12-2 17:24 
Re: 问题终于解决了!



QUOTE:
最初由 flyuser 发布
问题的原因实际上非常简单!只是查找的过程非常郁闷,哭。几天时间啊。

RBS空间是可以重用的。所以,问题应该不是出在RBS空间上。

那么,问题可能是出在报表上,我通过调出报表运行时占用的RBS Rollback Segment所执行的SQL语句,发现
报表一直在执行一段“UPDATE CUX_REP_GL_BOOK_TEMP”语句。

通过查看这段语句,最后发现它重复运行了N次。

通过修改,报表由原来的1-2小时变成20秒钟内运行完成,RBS空间也基本上不见增长了。


问题是你的报表已经执行完了,RBS的占用还是很高,这个问题是为什么?


__________________
仙人掌和水私奔了!email:watershed224@hotmail.commsn: watershed224@hotmail.com
只看该作者    顶部
离线 flyuser
钓不到猫的鱼


精华贴数 0
个人空间 0
技术积分 98 (17123)
社区积分 1 (35783)
注册日期 2004-6-22
论坛徽章:0
      
      

发表于 2004-12-3 09:21 
已经基本上不占用太多的RBS了

基本上捕捉不到SQL了。

而且RBS可以重用,所以,6G的RBS对于一个测试环境已经足够了


__________________
~~~~一天又一天; My QQ: 199637170
只看该作者    顶部
 
    

相关内容


CopyRight 1999-2006 itpub.net All Right Reserved.
北京皓辰广域网络信息技术有限公司. 版权所有
E-mail:Webmaster@itpub.net
京ICP证:010037号 联系我们 法律顾问