设为首页
收藏本站
开启辅助访问
切换到窄版
登录
立即注册
中问网首页
我的收藏
站长博客
搜索
搜索
本版
帖子
用户
第一问答网
»
论坛
›
中问网
›
问答
›
生产系统出现ORA1555错误,如何判断原因和在线解决? ...
返回列表
发新帖
生产系统出现ORA1555错误,如何判断原因和在线解决?
[复制链接]
11
|
2
|
2005-10-30 17:05:33
|
显示全部楼层
|
阅读模式
刚好昨天看到ITPUB出的书里面说有两种原因
1是一致性读
2是块清除(老实说我觉得书里面对于这个概念讲的还有点模糊,BITI大佬能否再解释一下?)
怎样判断是1/2哪种原因?
另外下面这段是否有道理?
”DB BLOCK BUFFER太小: 如果读一致性所请求的块的先前内容在缓冲区中, 那么就不用去访问回滚段. 而如果缓冲区太小, 使得先前版本的内容在CACHE中的可能性变小, 从而必须频繁的访问回滚段来获取先前的内容, 这将大大增大ORA-01555发生的可能“
还有最重要的就是怎样能在线增大回滚段大小,直接ALERT所有的rollback segment的init extends和opt size会不会有问题啊?这可是生产系统啊,我怕搞坏了
回复
使用道具
举报
千问
|
2005-10-30 17:05:33
|
显示全部楼层
各位大佬帮忙看看啦
我刚才
ALTER ROLLBACK SEGMENT RBS0 STORAGE (OPTIMAL 51200K );
然后又加入了新的回滚段,但是依然会报1555的错误啊
SEGMENT_NAME
TABLESPACE_NAME
SEGMENT_ID
------------------------------ ------------------------------ ----------
INITIAL_EXTENT MIN_EXTENTS MAX_EXTENTS STATUS
EXTENTS RSSIZE
-------------- ----------- ----------- ---------------- ---------- ----------
WAITSOPTSIZESHRINKSWRAPSEXTENDSAVESHRINK
---------- ---------- ---------- ---------- ---------- ----------
RBS9
RBS
10
524288 84096 ONLINE
84186112
0 52428800
0 14
0
0
我现在是一边一个程序在全表扫描(大概1000万数据),另外一个程序在UPDATE其中的一些数据,是每次UPDATE之后就马上COMMIT的,这样是否回滚段就会频繁的重用(体现在WARPS=14)导致出现1555错误?
回滚段根本就不EXTENDS,这样设置什么OPT SIZE都没有用了。
是否应该重建回滚段,然后设置比较大的MINEXTENDS还有让UPDATE程序不要频繁COMMIT?
回复
使用道具
举报
千问
|
2005-10-30 17:05:33
|
显示全部楼层
1.两个程序,两个事务,是哪一个报ORA-1555?
2.你有多少个回滚段?
3.先试着减小commit次数
...(待续)
回复
使用道具
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
千问
主题
0
回帖
4882万
积分
论坛元老
论坛元老, 积分 48824836, 距离下一级还需 -38824837 积分
论坛元老, 积分 48824836, 距离下一级还需 -38824837 积分
积分
48824836
加好友
发消息
回复楼主
返回列表
问答
热门排行