Perfect the Oracle RMAN duplicate 10g command

One reader asks expert Brian Peasland a question about datafile sizes with the Oracle RMAN duplicate 10g command.

I have questions regarding the RMAN duplicate 10g command. I'm running Oracle Database on Red Hat Enterprise Linux.

1) I am going to use RMAN to duplicate (remote host) a database. Does the RMAN duplicate 10g command restore the datafile size exactly the same (i.e., datafile size is 500MB but using only 200MB) or restore the datafile that is actually being used (i.e., 200MB)?

More on Oracle database expert answers

Check out more of Brian Peasland's expert answers

Ask your own Oracle question

2) My database is single-instance database. How do I know what SEQUENCE to put into the RMAN duplicate 10g command?




set until sequence <sequence##>

duplicate target database to dupg nofilenamecheck;


On the first question, Oracle just does a datafile> copy when you use RMAN to duplicate the database. So your 500MB file in the source database will be a 500MB file in the auxiliary database even though you may only be using 200MB of that.

For the second question, the SET UNTIL SEQUENCE command defines a log sequence> number for the point-in-time of the duplication. Each archived redo log gets a new sequence number. If you find that log sequence number 1234 was created today at noon, then if you use SET UNTIL SEQUENCE 1234, your duplicate database will be current as of noon today. You can query V$ARCHIVE_LOG to see when the sequence numbers were generated. But I typically do not use this. I skip the SET UNTIL command and let RMAN duplicate my database to be current as of the time I am performing the DUPLICATE operation.

Dig Deeper on Oracle database backup and recovery