RMAN makes a client connection to the target database, and two server processes are spawned. The primary process is used to make calls to packages in the SYS schema in order to perform the backup or recovery operations. This process coordinates the work of the channel processes during backups and restores. The secondary, or shadow, process polls any long-running transactions in RMAN and then logs the information internally. You can view the results of this polling in the view V$SESSION_LONGOPS: SELECT SID, SERIAL#, CONTEXT, SOFAR, TOTALWORK, ROUND( SOFAR/TOTALWORK*100, 2) "%_COMPLETE" FROM V$SESSION_LONGOPS WHERE OPNAME LIKE ' RMAN%' AND OPNAME NOT LIKE ' %aggregate%' AND TOTALWORK ! = 0 AND SOFAR <> TOTALWORK / You can also view these processes in the V$SESSION view. When RMAN allocates a channel, it provides the session ID information in the output: allocated channel: ORA_DISK_1 channel ORA_DISK_1: sid=16 devtype=DISK The sid information corresponds to the SID column in V$SESSION. So you could construct a query such as this: SQL> column client_info format a30 SQL> column program format a15 SQL> select sid, saddr, paddr, program, client_info from v$session where sid=16; SID SADDR PADDR PROGRAM CLIENT_INFO ---------- -------- -------- --------------- ----------------------- 16 682144E8 681E82BC RMAN.EXE rman channel=ORA_DISK_1 |
RMAN Quick Ref >