When performing a database restore using RMAN, Oracle provides progress information for each operation through the v$session_longops view. This allows DBAs to monitor the restore process and estimate its duration. For example:
set linesize 1000
col opname format a40
SELECT opname,
totalwork,
sofar AS procd_blocks,
TIME_REMAINING,
ROUND(sofar/totalwork*100,2) AS pct_done
FROM v$session_longops
WHERE opname LIKE 'RMAN%'
AND totalwork > 0
AND sofar <> totalwork;
OPNAME TOTALWORK PROCD_BLOCKS TIME_REMAINING PCT_DONE
---------------------------------------- ---------- ------------ -------------- ----------
RMAN: full datafile restore 67490026 3147741 26123 4.66
In this example, Oracle estimates that the restore will take over 26,000 seconds, and only 4.66% of the operation has been completed so far.
In Oracle versions 19c (possibly 19.28) and 23ai, if an RMAN operation runs longer than 900 seconds, Oracle automatically enables I/O statistics progress reporting. When this occurs, the following message is displayed:
I/O statistics progress reporting enabled with interval 900 seconds
After that, a progress report from v$session_longops is displayed on the screen, showing the status of each file being restored. Note that this report is not truly real-time; it is updated for each channel at 900-second intervals.
===================================================
RMAN Progress Status Report at 2025-08-15 21:16:37
===================================================
Progress for current step on channel: ORA_DISK_1 [INSTID = 1, SID = 1825, SERIAL = 62447, Polling channel id= 916]
-----------------------------------------------------------
Type Total_Blocks Procd_Blocks Open_Time status setcount File_Name
IN 0 606207 08/15/2025 21:01:32 IN PROGRESS 449 /backup/level_0_VAHIDxxx_e1416kch_449_1_1
OUT 4194302 276479 08/15/2025 21:01:33 IN PROGRESS 449 /oradata/datafile/o1_mf_users_n9yvqot4_.dbf
OUT 4194302 276479 08/15/2025 21:01:33 IN PROGRESS 449 /oradata/datafile/o1_mf_users_n9yvqols_.dbf
OUT 4194302 276479 08/15/2025 21:01:33 IN PROGRESS 449 /oradata/datafile/o1_mf_users_n9yvqo9o_.dbf
OUT 4194302 276543 08/15/2025 21:01:33 IN PROGRESS 449 /oradata/datafile/o1_mf_users_n9yvqo3w_.dbf
OUT 4194302 276991 08/15/2025 21:01:32 IN PROGRESS 449 /oradata/datafile/o1_mf_users_n9yvqnlr_.dbf
OUT 4194302 276991 08/15/2025 21:01:32 IN PROGRESS 449 /oradata/datafile/o1_mf_users_n9yvqnyv_.dbf
OUT 4194302 276991 08/15/2025 21:01:32 IN PROGRESS 449 /oradata/datafile/o1_mf_users_n9yvqntq_.dbf
OUT 4194302 276991 08/15/2025 21:01:32 IN PROGRESS 449 /oradata/datafile/o1_mf_users_n9yvqncg_.dbf
Total work = 33554416 blocks, blocks read/recovered= 2213944 blocks, Percentage = 6 %
After another 900 seconds, the report is updated:
===================================================
RMAN Progress Status Report at 2025-08-15 21:46:38
===================================================
Progress for current step on channel: ORA_DISK_1 [INSTID = 1, SID = 1825, SERIAL = 62447, Polling channel id= 916]
-----------------------------------------------------------
Type Total_Blocks Procd_Blocks Open_Time status setcount File_Name
IN 0 1812095 08/15/2025 21:01:32 IN PROGRESS 449 /backup/level_0_VAHIDxxx_e1416kch_449_1_1
OUT 4194302 858111 08/15/2025 21:01:33 IN PROGRESS 449 /oradata/datafile/o1_mf_users_n9yvqols_.dbf
OUT 4194302 858111 08/15/2025 21:01:33 IN PROGRESS 449 /oradata/datafile/o1_mf_users_n9yvqo9o_.dbf
OUT 4194302 858111 08/15/2025 21:01:32 IN PROGRESS 449 /oradata/datafile/o1_mf_users_n9yvqnyv_.dbf
OUT 4194302 858111 08/15/2025 21:01:32 IN PROGRESS 449 /oradata/datafile/o1_mf_users_n9yvqntq_.dbf
OUT 4194302 858111 08/15/2025 21:01:33 IN PROGRESS 449 /oradata/datafile/o1_mf_users_n9yvqo3w_.dbf
OUT 4194302 858111 08/15/2025 21:01:33 IN PROGRESS 449 /oradata/datafile/o1_mf_users_n9yvqot4_.dbf
OUT 4194302 858495 08/15/2025 21:01:32 IN PROGRESS 449 /oradata/datafile/o1_mf_users_n9yvqnlr_.dbf
OUT 4194302 858623 08/15/2025 21:01:32 IN PROGRESS 449 /oradata/datafile/o1_mf_users_n9yvqncg_.dbf
Total work = 33554416 blocks, blocks read/recovered= 6865784 blocks, Percentage = 20%
===================================================
RMAN Progress Status Report at 2025-08-15 22:01:38
===================================================
Progress for current step on channel: ORA_DISK_1 [INSTID = 1, SID = 1825, SERIAL = 62447, Polling channel id= 916]
-----------------------------------------------------------
Type Total_Blocks Procd_Blocks Open_Time status setcount File_Name
IN 0 2402303 08/15/2025 21:01:32 IN PROGRESS 449
/backup/level_0_VAHIDxxx_e1416kch_449_1_1
OUT 4194302 1149951 08/15/2025 21:01:32 IN PROGRESS 449 /oradata/datafile/o1_mf_users_n9yvqnyv_.dbf
OUT 4194302 1149951 08/15/2025 21:01:33 IN PROGRESS 449 /oradata/datafile/o1_mf_users_n9yvqo3w_.dbf
OUT 4194302 1149951 08/15/2025 21:01:33 IN PROGRESS 449 /oradata/datafile/o1_mf_users_n9yvqot4_.dbf
OUT 4194302 1149951 08/15/2025 21:01:33 IN PROGRESS 449 /oradata/datafile/o1_mf_users_n9yvqols_.dbf
OUT 4194302 1149951 08/15/2025 21:01:33 IN PROGRESS 449 /oradata/datafile/o1_mf_users_n9yvqo9o_.dbf
OUT 4194302 1150207 08/15/2025 21:01:32 IN PROGRESS 449 /oradata/datafile/o1_mf_users_n9yvqntq_.dbf
OUT 4194302 1150463 08/15/2025 21:01:32 IN PROGRESS 449 /oradata/datafile/o1_mf_users_n9yvqnlr_.dbf
OUT 4194302 1150463 08/15/2025 21:01:32 IN PROGRESS 449 /oradata/datafile/o1_mf_users_n9yvqncg_.dbf
Total work = 33554416 blocks, blocks read/recovered= 9200888 blocks, Percentage = 27%
This report provides real-time visibility into the restore process, showing the total number of blocks for each file, how many have been processed, and the overall completion percentage.
Top comments (0)