这节内容为如何查看和监控数据泵的状态

1. 监控操作系统进程

ps -ef |grep expdp

ps -ef |grep impdp

2. 查看日志文件

注意如果查看的是import日志记得加feedback=1000 参数

这样使其每insert 1000行才显示

tail -f expdp.log

3. 查看相关视图

3.1 DBA_DATAPUMP_JOBS

该视图显示所有的数据泵任务和它们的状态

1.png

3.2 USER_DATAPUMP_JOBS

查看当前用户的数据泵任务和它们的状态

3.3 DBA_DATAPUMP_SESSIONS

2.png

这里可以根据SADDR定位的SID

select 
   sid, 
   serial#
from 
   v$session s, 
   dba_datapump_sessions d
where 
   s.saddr = d.saddr;

·

3.4 V$SESSION_LONGOPS

这里可以也可以看到一些数据泵的踪迹

select 
   sid, 
   serial#, 
   sofar, 
   totalwork
from 
   v$session_longops;
3.png

4. 交互命令模式

4.1 当前会话进入

我们这里使用Ctrl+C 进入命令模式

4.png

4.2 其他会话进入

我们知道expdp/impdp实际上是Job

查看当前运行的Job名称

SELECT j.owner_name, j.job_name, j.job_mode, j.state, s.session_type, s.saddr
FROM dba_datapump_jobs j,dba_datapump_sessions s
WHERE UPPER(j.job_name) = UPPER(s.job_name);
5.png

之后根据Job name进入

expdp system/mypassword attach=SYSTEM.SYS_EXPORT_SCHEMA_01;
6.png

impdp同理

impdp user/password
attach='job_user.job_name'

之后查看状态

impdp> status