Oracle 终止expdp/impdp进程运行的方法
expdp/impdp 数据泵导入导出过程中需要中止进程的话,按照以下步骤执行:
1.先查到job_name
SQL> select * from dba_datapump_jobs;
2.attach该任务:
expdp system/sys attach=SYS_EXPORT_SCHEMA_01
Worker 1 Status:
Instance ID: 1
Instance name: test
Host name: server.dw.com
Object start time: Wednesday, 27 November, 2019 10:32:28
Object status at: Wednesday, 27 November, 2019 10:32:31
Process Name: DW00
State: EXECUTING
如果是impdp,则使用impdp替换expdp. 重新跑的话就使用kill_job
Export> stop_job
是否确实要停止此作业 ([Y]/N): YES
Export> kill_job
是否确实要停止此作业 ([Y]/N): YES
在执行的时候exit就可以进入交互模式,windows和LINUX下都是一样的。
重新进入EXPDP/IMPDP,就可以执行下面的交互命令:
$expdp username/password,
**注:**交互模式常用命令:
CONTINUE_CLIENT返回到记录模式。假如处于空闲状态, 将重新启动作业。
START_JOB 启动恢复当前作业。
STATUS在默认值 (0) 将显示可用时的新状态的情况下,要监视的频率 (以秒计) 作业状态。
STATUS=[interval]
STOP_JOB顺序关闭执行的作业并退出客户机。
STOP_JOB=IMMEDIATE 将立即关闭数据泵作业。
还有其他命令:
ADD_FILE向转储文件集中添加转储文件。
ADD_FILE=dirobjdumpfile-name
CONTINUE_CLIENT 返回到记录模式。假如处于空闲状态, 将重新启动作业。
EXIT_CLIENT 退出客户机会话并使作业处于运行状态。
HELP总结交互命令。
KILL_JOB分离和删除作业。
PARALLEL更改当前作业的活动 worker 的数目。
PARALLEL=worker 的数目。
START_JOB 启动恢复当前作业。
STATUS在默认值 (0) 将显示可用时的新状态的情况下,
要监视的频率 (以秒计)作业状态。
STATUS=[interval]
STOP_JOB顺序关闭执行的作业并退出客户机。
STOP_JOB=IMMEDIATE 将立即关闭
方法二:
SELECT owner_name,job_name,operation,job_mode,state,attached_sessions FROM dba_datapump_jobs WHERE job_name NOT LIKE 'BIN$%' ORDER BY 1,2
SELECT o.status, o.object_id, o.object_type, o.owner||'.'||object_name "OWNER.OBJECT" FROM dba_objects o, dba_datapump_jobs j
WHERE o.owner=j.owner_name AND o.object_name=j.job_name
AND j.job_name NOT LIKE 'BIN$%' ORDER BY 4,2;
删除
drop table TEST.SYS_EXPORT_SCHEMA_01;
commit;