Skip to Main Content

Breadcrumb

Question and Answer

Connor McDonald

Thanks for the question, Steven.

Asked: July 10, 2018 - 8:01 am UTC

Last updated: July 27, 2018 - 1:15 am UTC

Version: 10.2.0.1

Viewed 1000+ times

You Asked

Hi,

We are carrying out some RMAN prototyping in our offline environment for duplexing backup sets to two different locations. We have added the following RMAN persistent configuration settings:

CONFIGURE DEVICE TYPE DISK PARALLELISM 2;
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 2;
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 2;
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT 'C:\temp\rmandest1\%U', 'D:\temp\rmandest2\%U';

When we run a backup with both 'rmandest1' and 'rmandest2' directories present, all is fine an no errors are reported. However when we remove either one of the directories the following error is logged:

RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of backup command at <date and time>
ORA-19504: failed to create file "D:\temp\rmandest2\<Backup piece name>"
ORA-27040: skgfrcre: create error, unable to create file
OSD-04002: unable to open file
O/S-Error: (OS 3) The system cannot find the path specified.

Recovery Manager complete.


Therefore if one or more of the duplexed locations is not available for whatever reason, RMAN does not backup to the remaining location/s that are available, and just reports the error. This seems a bit odd, as the whole point of the duplexing is to provide a level of redundancy.

Have you come across this issue before, and if so could you provide us with a solution to it

Any help would be appreciated

Thanks in advance

Steve

and Connor said...

I asked the RMAN PM about this:

"You can’t do that. If you set 2 locations, RMAN will expect them to be there. The only way that I can think to do this is with scripting to check the disk locations before RMAN starts. Then modify the RMAN statement based on what is available at runtime."

Hope this helps

Rating

  (1 rating)

Is this answer out of date? If it is, please let us know via a Comment

Comments

Missing RMAN Duplexed location

Steven Cowlayshaw, July 26, 2018 - 12:32 pm UTC

Thanks very much for your response Connor.

I fully understand what you have said in your update. However, I would consider there would be to much risk in using the RMAN Duplexing feature, as if one or more locations are unavailable you DO NOT get a backup at all.

What I would like to know is why this feature was not coded in a way which would still write to all available locations if one or more locations are unavailable, so at least you get a backup. Maybe this was more difficult to code and/or would degrade performance, I do not know, this is what I would like to know. Maybe the Oracle RMAN Designers/Developers could answer it. That would be the best outcome.

As an example what is the better scenario from the following:

1. One of the Duplexed destinations is unavailable, the backup job fails entirely, therefore no backup available for restore and recovery, RMAN reports the issue of the unavailable destination which can then be resolved.

2. One of the Duplexed destinations is unavailable, the backup job succeeds to the available destination/s, therefore a backup is available for restore and recovery, RMAN reports the issue of the unavailable destination which can then be resolved.

I would say scenario 2 above is the better one. Therefore I would like to know why scenario 2 was not considered appropriate?

As you say, scripting could be used to check the disk locations before RMAN starts. Then modify the RMAN statement based on what is available at runtime.

I am also experimenting with using something like the following to run immediately after the main backup in my script:

BACKUP BACKUPSET ALL Format <new location> ;

Thanks in advance

Steve
Connor McDonald
July 27, 2018 - 1:15 am UTC

I agree - I'd like to see an extension along the lines of (say):

RMAN> configure duplex destinations 3
RMAN> configure duplex minimum successful 2

or something similar to that.

All I can suggest is to log this at

https://community.oracle.com/community/database/database-ideas

and encourage the community to vote on it

More to Explore

Backup/Recovery

Check out the complete guide to all of the Backup & Recovery techniques in the Oracle Database.