ora-01555如何重现
可以通过undo原理推到如何重现。
ORA-01555快照过旧,在SELECT发起的那一刻,之后表上的一些修改或者新数据是不会被这个select查询出来的,这些修改前的数据被放到了UNDO中,所以这个select就会去undo里面查修改之前的数据。
如果这个select时间很长,或者undo表空间和undo_retention配置过小,加上表上的事物很多,undo里面已经放不下所有快照,这时候就会报错ORA-01555。