7 x 24 在线支持!
Oracle ORA-26040: 数据块是使用 NOLOGGING 选项加载的 ORA-26040:FLASHBACK DATABASE WITH NOLOGGING OBJECTS/ACTIVITIES RESULTS IN CORRUPTION 以nologging对象/活动闪回数据库导致损坏
如果自己搞不定可以找诗檀软件专业ORACLE数据库修复团队成员帮您恢复!
诗檀软件专业数据库修复团队
服务热线 : 13764045638 QQ号:47079569 邮箱:service@parnassusdata.com
在本文中 适用于: Oracle Server – Enterprise Edition – 版本: 10.2.0.1到 10.2.0.4 – Release: 10.2 to 10.2 症状 使用Flashback Database ,当尝试被逆转,类似直接加载插入(direct load insert)的NOLOGGING操作的影响会导致损坏,但当使用*非保证的non-guaranteed *还原点时,这只会出现CTAS (create table as select) 。例如: CTAS/NOLOGGING/非保证的还原点non-guaranteed restore points: 示例 SQL> create restore point s1; SCOTT SQL> create restore point s2; SQL> INSERT /*+ APPEND */ INTO S SELECT * FROM EMP; SQL> COMMIT; SYS SQL> create restore point s3; =-=-=- FB to restore point s1 and select from emp =-=-=- SCOTT =-=-=- FB to restore point s3 and select from emp. =-=-=- SQL> flashback database to restore point s3; SQL> alter database open resetlogs; SCOTT SQL> select * from s; 这适用于 – 原因 这是预料中的。闪回回到目标时间之前的一个“模糊”快照,且可能要恢复高达30分钟的重做。在这个情况下,恢复遇到由nologging操作生成的 “invalidataion redo” 且发出ORA-26040。 解决方案 作为最佳实践,你应该在nologging操作遇到失效重做后至少1小时来创建你的还原点。
查看示例 >>At 7:51 PM SCOTT SQL> insert /*+ append */ into t values(9,’my’,’people’); SQL> commit; >>At 9 PM SYS SQL> create restore point s3; SQL> SHUT IMMEDIATE SQL> alter database open resetlogs; SCOTT SQL> select * from t; X Y Z 6 rows selected. >>
|