When performing a backup of a large database using RMAN, you often get asked “how is the backup progressing?” and “when it will complete?”. Although the log produced by RMAN is detailed in almost every other aspect, there isn’t any information recorded that will allow you to give a simple and straightforward answer to these questions
However, the information is available within the V$RMAN_STATUS data dictionary view.
This above details were obtained through querying this view (script below) and we can clearly see that the backup of this 10TB database is currently 8.68% complete and has an estimated completion tim of 14:45 on the 17th August 2013.
The calculation is based on the DBSIZE (the sum of all datafiles) and the amount of data that has been READ by RMAN, which is then projected from the backup start time to give an estimated completion time. The amount of data WRITTEN also allows us to calculate that RMAN has achieved an impressive compression ratio of 38.4% (of the original size) so far.
The SQL for this result is shown below:
col dbsize_mbytes for 99,999,990.00 justify right head "DBSIZE_MB" col input_mbytes for 99,999,990.00 justify right head "READ_MB" col output_mbytes for 99,999,990.00 justify right head "WRITTEN_MB" col output_device_type for a10 justify left head "DEVICE" col complete for 990.00 justify right head "COMPLETE %" col compression for 990.00 justify right head "COMPRESS|% ORIG" col est_complete for a20 head "ESTIMATED COMPLETION" col recid for 9999999 head "ID" select recid , output_device_type , dbsize_mbytes , input_bytes/1024/1024 input_mbytes , output_bytes/1024/1024 output_mbytes , (output_bytes/input_bytes*100) compression , (mbytes_processed/dbsize_mbytes*100) complete , to_char(start_time + (sysdate-start_time)/(mbytes_processed/dbsize_mbytes),'DD-MON-YYYY HH24:MI:SS') est_complete from v$rman_status rs , (select sum(bytes)/1024/1024 dbsize_mbytes from v$datafile) where status='RUNNING' and output_device_type is not null /
Below is a link to a SQL script I have created which shows the results of this query and also lists the RMAN database connections (one per backup channel allocated) and what event they are currently waiting on (such as the Media Library creating, writing, querying or committing a backup piece).