ORA-01555(快照过旧)问题让很多人感到十分头痛。最近我们的生产系统上也报出了ORA-01555错误。就结合这次案例将ORA-1555问题作个案例分析,并浅析产生原因和各种解决办法。...后面的分享中将会继续解答ora-01555错误发生的场景和解决方案
最后分享一个使用不可见索引解决 ORA-01555 的故障。希望对大家有帮助。...利用不可见索引解决 ORA-01555故障 4.1 故障现象描述 某天,一客户核心数据库的 alert 日志报 ORA-01555 错误,从早上 8:25 开始一直到下午 16:36,连续 ORA-...根据以往处理 ORA-01555 错误的经验,要么优化 SQL 语句,加速语句执行,缩短语句执行时间。...也就是说主键索引损坏会导致 ORA-01555 错误。...drop index tmp_idx_tab1_id_1; 最后,alert 日志不再报 ORA-01555 错误,业务恢复正常,至此利用不可见索引成功解决 ORA-01555 问题。
题目部分 在Oracle中,什么是ORA-01555错误?...答案部分 在告警日志中记录的ORA-01555(snapshot too old,快照过旧)报错信息类似: ORA-01555: snapshot too old: rollback segment...进行加载数据,在访问这些数据时,有时会产生ORA-01555错误。...知道了ORA-01555错误产生的原因就可以总结出以下方法来解决ORA-01555错误问题: (1)扩大回滚段 因为回滚段是循环使用的,如果回滚段足够大,那么那些被提交的数据信息就能保存足够长的时间,而那些大事务就可以完成一致性读取...减少游标的打开时间,就减少了ORA-01555错误发生的几率。
EXPDP导出带LOB字段表报ORA-01555错误解决 同事导出数据,结果遇到如下报错: expdp user1/XXXXXXXX directory=szdata1 dumpfile=szhzinfo...unload and is being skipped due to error: ORA-29913: error in executing ODCIEXTTABLEPOPULATE callout ORA...01555: snapshot too old: rollback segment number with name "" too small ORA-22924: snapshot too old 遇到ORA...由于该表格有BLOB类型的列,经过搜索MOS怀疑是BLOB有损坏 IF: ORA-1555 Error During Export on LOB Data (文档 ID 1950937.1) LOBs and ORA
ORA-01555错误是一种在Oracle数据库中很常见的错误。尤其在Oracle 8i及之前的版本最多。...在这种情况下,ORA-01555错误就会出现。...由于性能原因,导出时间过长(几个小时以上),在导出时经常会遇到ORA-01555错误而失败。...从之前对ORA-01555错误的成因分析可以知道,这个ORA-01555错误,正是由于表上存在未清除的事务,同时导出时间过长,UNDO段头的事务表被全部重用,ORACLE在查询到有未清除事务的块时不能确定事务提交时间是否早于导出...(查询)开始时间,这时候就报ORA-01555错误。
前期分享了ORA-01555错误的原理及相关基础概念。...参考(高频错误:ORA-01555深入剖析) 今天我们来分析ORA-01555发生的场景和各种解决方案 1555发生的场景 测试环境 首先建立测试环境。...SQL> print :cl ERROR: ORA-01555: snapshot too old: rollback segment number 18 with name "_SYSSMU18$"...但是事务信息表中的数据都已经被覆盖,所以报1555错误: SQL> print :cc ERROR: ORA-01555: snapshot too old: rollback segment number
: Thu Jul 2 22:52:46 2015 Message text: (PE1-000143) Internal IO Framework Database Error, message ORA
---- 阶段四: ---- 可是这种修改,当晚执行,就出现了问题,夜维日志报错,ORA-01555, ?...从alert日志中,确认就是这条SQL,导致了这个ORA-01555错误, ORA-01555 caused by SQL statement below (SQL ID: xxxxxxxxxx, Query...0x0001.f10b2hk7): delete from B where B.p_id in (select id from C where pkid > :1 and pkid < :2); ORA...再看SQL语句,说明执行delete操作,时间太久,导致期间使用的UNDO前镜像,已经被其他事务覆盖了,因此直接报错ORA-01555。...这比800次扫描200万的数据,有过之而无不及,不报ORA-01555的错误才怪, delete from B where B.p_id in (select id from C) and rownum
不可能找回的实验 这问题其实和闪回查询的原理有关,因为闪回查询使用的是UNDO表空间,因此回滚段是否包含指定删除时间的镜像,就成为了是否可以找回的关键,如果当前需要找回的数据已经从UNDO删除,则可能报错ORA...若闪回查询使用的UNDO记录已被删除,此时查询报错ORA-01555,这种方法就不支持找回sequence了。
实现的一致性读产生的代价——ORA-01555 ORA-01555: “snapshot too old: rollback segment number string with name “string...快照太久,回滚段太小,回滚记录被覆盖 具体可以参见:ORA-01555 原因与解决 自动管理Undo-AUM Automatic Undo Management 查看undo配置信息: SQL> show
3、Analyze TABLE出错ORA-01555 描述: alert.log中多次出现analyze分析表时报ORA-01555快照过久的错误,请问是什么原因?
很多客户的系统都是这样, 业务SQL消耗了过多的系统资源, 执行效率还很差, 大部分都有很大的优化空间, 只是很多人首先会想到更换高级硬件, 不知道优化才是正道(有个客户的EBS业务执行几个小时后报ora
2)ORA-01555原因和解决方案? 参考答案:原因是Oracle查询要保证一致性读,而当查询语句执行时间较长,很可能后面要查询块的undo信息已经被覆盖,导致无法构造一致性读需要的cr块。...oracle会抛出ORA-01555错误。 解决方案: a. 优化该查询SQL,缩短其执行时间; b.
1 闪回数据归档概述 1.1 闪回数据归档(Flashback Data Archive)概念 虽然ORA-01555错误可以通过种种手段来避免和减少,但是随着时间的流逝,这些UNDO信息总会失去
ORA-01555 1.sql 执行的时间太长; 2.undo 表空间的压力太大; 3.undo 表空间大小的设定,取决于最长执行sql的时间,以及需要闪回的时段。
ORA-01555的应对方法? 20....ORA-01555的应对方法? 解答:具体的出错信息是snapshot too old within rollback seg , 通常可以通过增大rollback seg来解决问题。
ORA-01555的应对方法? 解答:具体的出错信息是snapshot too old within rollback seg , 通常可以通过增大rollback seg来解决问题。
) * ERROR at line 1: ORA
Fri Jun 27 06:04:08 2014 ORA-01555 caused by SQL statement below (SQL ID: 7wx3cgjqsmnn4, Query Duration
嘉年华听了恩墨学院的一个主题:《重现ORA-01555 细说Oracle 12c Undo数据管理》,吕星昊老师介绍了UNDO的概念以及ORA-1555的产生,并介绍了12c以来Oracle的UNDO相关的新特性
领取专属 10元无门槛券
手把手带您无忧上云