日期:2014-05-17  浏览次数:20843 次

Snapshot Too Old due to Tablespace Limit
检测到快照太旧的错误: SQL ID fnb28djfgwj4k, 快照 SCN 0x0000.01fcc2d5, 最近的 SCN 0x0000.01fdb016, 还原表空间 UNDOTBS1, 当前的还原保留时间 957。

------解决方案--------------------
帮顶。求牛人解答
------解决方案--------------------
lz 这个情况,主要从3个方面入手
1 undo 表空间的大小, 不妨设置的大一些, 具体多大合适,看你的数据量的情况,因为undo 循环使用的,当 空间不够的时候,就可能找到时间较早的已提交事务所在 extents, 标记成 expired,进行覆盖

2 undo retention 参数, 如果是900,他的单位是秒,那就是15分钟

3 还有个选项就是 guarantee(保证 保留时间内的已经提交的数据不会被覆盖) 和 noguarantee(不保证)

你用 alter tablespace undo retention guarantee/noguarantee;
 不过还是要保证你的undo 足够大



------解决方案--------------------
及时提交事务,不要开启大的事务
增加Undo空间