← Backup & Recovery
Oracle · Backup & Recovery

How to check Data Pump job progress in Oracle

Show Oracle Data Pump job state from DBA_DATAPUMP_JOBS plus per-worker progress percentage from V$SESSION_LONGOPS.

Tested on11g12c18c19c21c23ai26ai

Two views: DBA_DATAPUMP_JOBS lists the master job (state, degree, attached sessions) and V$SESSION_LONGOPS shows the per-worker progress with a percentage. Together they answer ''is the Data Pump job still running and how far along is it''.

-- 1) Master Data Pump jobs and their state
COL owner_name    FORMAT a15
COL job_name      FORMAT a25
COL operation     FORMAT a10
COL job_mode      FORMAT a10
COL state         FORMAT a12

SELECT owner_name,
       job_name,
       operation,
       job_mode,
       state,
       degree,
       attached_sessions
FROM   dba_datapump_jobs
WHERE  state IN ('EXECUTING', 'DEFINING', 'NOT RUNNING')
ORDER BY owner_name, job_name;

-- 2) Per-worker progress (also works for RMAN backups — filter as needed)
SELECT sid,
       serial#,
       context,
       sofar,
       totalwork,
       ROUND(sofar / totalwork * 100, 2) AS "%_COMPLETE"
FROM   v$session_longops
WHERE  opname NOT LIKE '%aggregate%'
AND    totalwork != 0
AND    sofar     <> totalwork
ORDER BY 6 DESC;
datapumpbackupdba_datapump_jobsv$session_longops