1

I have done the following steps:

  1. Backed up database with INCREMENTAL LEVEL 0
  2. Delete INCREMENTAL LEVEL 0 backup without telling controlfile. So deleted it by hand. And did not make crosscheck.

  3. Backed up database with INCREMENTAL LEVEL 1(without making crosscheck). How surprising it may be, log showed me that INCREMENTAL LEVEL 1 was successfully done.

Note, I have no INCREMENTAL LEVEL 0 backup, but controlfile doesn't know it. I have just INCREMENTAL LEVEL 1.

I tried to restore database with this backup but of course couldn't. It was telling me that no backup of datafile 1-5 found...

If controlfile had known about EXPIRED backups , then INCREMENTAL LEVEL 1 backup first would do INCREMENTAL LEVEL 0 and after-that INCREMENTAL LEVEL 1.

How to avoid this situation. Do I have to use chrosscheck in my backup script? Or set recovery window in RMAN?

I have Oracle 11g database. Backup is taken by Netbackup Server. So Netbackup deletes backups itself by its retention. RMAN retention policy is configured to REDUNDANCY 2.

Please, Advice me.

2
  • This shouldn't be too hard to test. Do a CROSSCHECK and then see if it allows you to create an incremental 1 backup when it knows the 0 doesn't exist. Jun 27, 2012 at 12:27
  • @LeighRiffel I have already tested and after crosscheck it made inc 0 backup first and then inc 1. (without crosschek it makes inc 1 just) I just wonder to know how you do when using Netbackup as backup server. Do you use crosscheck in backup script? I was not using crosscheck but after founding that inc 1 may be done with no errors even u don't have inc 0 which means that you are not able to restore database because u don't have all backups AND you don't know about this! :(
    – kupa
    Jun 27, 2012 at 14:38

1 Answer 1

5

Yes, if you want to prevent a level 1 from being created without a corresponding level 0 being available, then you need to do a crosscheck in the script so RMAN knows that the level 0 is not available.

Prior to 10g (or with compatibility < 10.0) Oracle would do a level 0 when a level 1 was done without a level 0. Since you are on 11g, I would expect your compatibility to be >=10.0, so RMAN "copies all blocks that have been changed since the file was created". This behavior seems to have changed between versions and there is some confusion as to what the current behavior is, but your findings are consistent with the documentation.

4
  • thank you for you responce. But the following sentence confuses me: "copies all blocks that have been changed since the file was created" Which file is mentioned? which file was created? Thank you
    – kupa
    Jun 28, 2012 at 16:23
  • one more question: Do I need to indicate recovery windows in RMAN?
    – kupa
    Jun 28, 2012 at 16:28
  • I believe "the file" is referring to the datafile. Jun 28, 2012 at 17:09
  • Retention policy information can be found at docs.oracle.com/cd/E11882_01/backup.112/e10642/… Jun 28, 2012 at 17:11

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.