ORA-01555 caused by SQL statement below

Alert.log今天产生大量的

ORA-01555 caused by SQL statement below (SQL ID: atfsm4urynvf2, Query Duration=0 sec, SCN: 0x0087.1d1eafdc):
select * from askey_id_mapping as of timestamp sysdate - 2/24 where ID_VALUE = ‘JCYVD30001655CN’
Sat Dec 08 10:43:43 2018
ORA-01555 caused by SQL statement below (SQL ID: cx70v53dbq51x, Query Duration=0 sec, SCN: 0x0087.1c7e4165):
select * from askey_id_mapping as of timestamp sysdate - 4/24 where ID_VALUE = ‘JCYVD30001655CN’
Sat Dec 08 10:44:14 2018
Thread 1 advanced to log sequence 377657 (LGWR switch)
Current log# 1 seq# 377657 mem# 0: +NSFC3DB_ARCH/nsfc3db/onlinelog/group_1.267.860580217
Sat Dec 08 10:44:15 2018

就是一个查询要访问某个数据块,而这个数据块在这个查询执行过程中修改过,那么该查询需要查询undo中数据块,而undo中该数据块已经不存在,从而出现ORA-1555。

解决办法:
Case 1 – Rollback Overwritten
1.缩短sql运行时间
2.增加undo_retention,这个同时需要考虑undo空间大小
3.减少commit(rollback)次数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值