演示如何生成错误“ORA-01555: snapshot too old”。
在大型OLAP系统中运行查询经常会遭遇“ORA-01555: snapshot too old”的错误。这是因为Oracle为了保持读一致性,需要从回滚段中读取被修改的记录,但是同时这条被修改的记录在回滚段中却找不到了。这时,就会报错“ORA-01555: snapshot too old”。
原创
2011-05-02 17:36:44
5050阅读
不知道是从哪里转的了, 假设有张表,叫table1,里面有5000万行数据,假设预计全表扫描1次需要1个小时,我们从过程来看: 1、在1点钟,有个用户A发出了select * from table1;此时不管将来...
转载
2015-11-19 11:53:00
122阅读
2评论
首先,先了解下此错误产生的原因。
其根本原因是,undo表空间里的commit过的数据被覆盖。这种事件最容易发生在游标cursor中。当用户A运行一个长时间的cursor,而此时用户B已对cursor查询所使用的原始数据做了修改。长时间运行中的cursor,查询到的数据是未修改前的数据。这些数据是存放在undo表空间里的,如果undo表空间太小,随着修改的增
原创
2011-10-30 20:12:04
4406阅读
快照太旧,snapshot too old
翻译
精选
2011-12-25 13:55:10
2373阅读
原文博客链接地址:数据库open报错ORA-01555: snapshot too old今天正在东莞蜜月的时候,一个学生说他管理的测试库出
原创
2023-05-22 15:02:52
126阅读
看到网上有个同学,举例说明,觉得不错,拿来用下:假设有张表,叫table1,里面有5000万行数据,假设预计全表扫描1次需要1个小时,我们从过程来看: 1、在1点钟,有个用户A发出了select * from table1;此时不管将来table1怎么变化,正确的结果应该是用户A会看到在1点钟这个时刻的内容。这个是没有疑问
转载
精选
2013-07-19 13:46:48
357阅读
--创建undo表空间时固定表空间的大小sys@TDB112>create
undo tablespace undo_small 2
datafile'/u01/app/oracle/oradata/TDB112/undo_small.dbf' 3 size
2m 4
autoextend off;--切换表空间为定义的
原创
2014-08-14 11:11:07
1218阅读
ORA-01555错误详解 ORA-01555(快照过旧)问题让很多人感到十分头痛。最近我们的生产系统上也报出了ORA-
原创
2023-07-20 10:23:44
282阅读
第1步修改undo表空间大小 create undo tablespace undotbs2 datafile '/u01/app/oracle/oradata/ocp/undotbs2.dbf' size 10M; alter system set undo_tablespace=undotbs2; alter system set undo_retention=2 scope
原创
2013-02-04 12:25:00
602阅读
oracle10g用数据泵导出数据提示,提示错误如下:ORA-31693: Table data object "SMARTGPS2006"."MCC_ASYN_POS":"MCC_ASYN_POS201409" failed to load/unload and is being skipped due to error:ORA-29913: error in executing ODCIEXT
原创
2014-09-30 10:29:24
5991阅读
这篇文章紧接着上一篇“ORA-01555错误总结(一)”。主要描写叙述延迟块清除导致的ORA-01555错误。以下是一些简介(上一遍已经介绍过) ORA-01555错误是一种在oracle数据库中很常见的错误。甚至也能够说是一个很经典的错误,仅仅是因为oracle的发展越来越自己主动化(UNDO自己
转载
2017-06-09 17:46:00
223阅读
2评论
ORA-01555 原因与解决:
前面提到了ORA-01555错误,那么现在来看一下ORA-01555错误是怎样产生的。由于回滚段是循环使用的,当事务提交以后,该事务占用的回滚段事务会被标记为非活动,回滚段空间可以被覆盖重用。那么一个问题就出现了,如果一个查询需要使用被覆盖的回滚段构造前镜像实现一致性读,那么此时就会出现Oracle著名的ORA-01555错误。
ORA-01555错误的另
转载
2021-08-23 18:05:55
10000+阅读
ORA-01555是因为回滚段中的原数据镜像被覆盖,一致性读时查询时不到。模拟ORA-01555错误 :1.配置一个不能自动扩展
原创
2023-02-27 10:15:45
187阅读
ORA-01555 原因与解决:
前面提到了ORA-01555错误,那么现在来看一下ORA-01555错误是怎样产生的。由于回滚段是循环使用的,当事务提交以后,该事务占用的回滚段事务会被标记为非活动,回滚段空间可以被覆盖重用。那么一个问题就出现了,如果一个查询需要使用被覆盖的回滚段构造前镜像实现一致性读,那么此时就会出现Oracle著名的ORA-01555错误。
ORA-01555
转载
精选
2013-04-26 10:34:52
251阅读
ORA-01555 原因与解决:
前面提到了ORA-01555错误,那么现在来看一下ORA-01555错误是怎样产生的。由于回滚段是循环使用的,当事务提交以后,该事务占用的回滚段事务会被标记为非活动,回滚段空间可以被覆盖重用。那么一个问题就出现了,如果一个查询需要使用被覆盖的回滚段构造前镜像实现一致性读,那么此时就会出现Oracle著名的ORA-01555错误。
ORA-01555
转载
精选
2013-04-26 10:35:25
724阅读
ORA-01555 原因与解决:
前面提到了ORA-01555错误,那么现在来看一下ORA-01555错误是怎样产生的。由于回滚段是循环使用的,当事务提交以后,该事务占用的回滚段事务会被标记为非活动,回滚段空间可以被覆盖重用。那么一个问题就出现了,如果一个查询需要使用被覆盖的回滚段构造前镜像实现一致性读,那么此时就会出现Oracle著名的ORA-01555错误。
ORA-01555
转载
精选
2013-04-26 10:35:54
292阅读
下面是摘自联机文档Database Error Messages关于ORA-01555的描述ORA-01555: snapshot too old: rollback segment number string with name "string"too smallCause: rollback records needed by a reader for consistent
原创
2013-09-11 19:39:22
2752阅读
from:https://community.oracle.com/community/support/support-blogs/database-support-blog/blog/2015/12/10/ora-1555-do-you-know-how-to-resolve-this-issue TroubleshootingBelow is a list of steps to troubl
原创
2021-09-08 09:46:01
325阅读
用户user1对表进行了更新操作,用户user2在user1还没有进行提交前读表中数据,而且是大批量的读取(打个比方:耗时3分钟)而在这3分钟内user1进行了提交操作,那又会产生什么影响呢?这个时候怎么保证读写一致性呢?这个时候DBMS就要保证有足够大的undo表空间来存放修改前的数值,,以保证u
转载
2019-07-12 10:37:00
196阅读
2评论
参考练习题目 OCP DBA1 142题
做数据库服务器日监控检查时,在日志中发现了ORA-01555: snapshot too old.的错误。根据日志中显示的SQL代码,结合应用程序的日志信息,是由于应用程序作了一个大数据量的update,导致回滚段不足。
一般导致ORA-01555的原因是:
1. 回滚段数量不足,导致回滚段Transaction Slot被overwrite
2.
原创
2011-05-08 13:59:50
756阅读