9 Replies Latest reply on Feb 7, 2013 1:38 AM by Hemant K Chitale

    How to enforce SCN of a datafile to the latest value?


      I try to restore old contents of my database on another server. The DB is not (and never was) in ARCHIVELOGMODE, and I have 2 cold backups of it. Neither backup set is complete (due to recycling of old tapes), but I still can restore all datafiles, though to two different SCNs. Out of 38 datafiles, 35 have SCN = 2458610942 and 3 have SCN = 2448133391.

      SQL> select checkpoint_change#, count(1) as cnt from v$datafile_header group by checkpoint_change#;

      2448133391 3
      2458610942 35

      I believe, these 3 datafiles should still have usable contents, and hence would like to open DB as is.

      RMAN> recover database;

      Starting recover at 04-FEB-13
      using channel ORA_DISK_1
      using channel ORA_SBT_TAPE_1

      starting media recovery

      RMAN-08187: WARNING: media recovery until SCN 2448133391 complete
      Finished recover at 04-FEB-13

      RMAN> alter database open resetlogs;

      RMAN-00571: ===========================================================
      RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
      RMAN-00571: ===========================================================
      RMAN-03002: failure of alter db command at 02/04/2013 18:17:06
      ORA-01152: file 1 was not restored from a sufficiently old backup
      ORA-01110: data file 1: '/u01/oradata/GENERIC/system01.dbf'

      Of course, there is no archived logs to update these 3 tablespaces.
      Can I enforce SCN of these 3 datafiles to the latest value 2458610942? Or should I do something else?

      Thanks already for your help!