欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Oracle管理 | 停止数据泵作业

程序员文章站 2022-09-05 12:35:46
通过数据泵进行数据迁移过程中需要停止作业,则需要通过dba_datapump_jobs进行操作(所以数据泵操作时候加上job_name=xxx是个好习惯)参考METALink (Doc ID 336014.1)1.查看job名字和状态select owner_name, job_name,state from dba_datapump_jobs;2.停止jobExport> stop_job=immediateAre you sure you wish to stop this job...

通过数据泵进行数据迁移过程中需要停止作业,则需要通过dba_datapump_jobs进行操作(所以数据泵操作时候加上job_name=xxx是个好习惯)

参考METALink (Doc ID 336014.1)

1.查看job名字和状态

select owner_name, job_name,state from dba_datapump_jobs;

2.停止job

Export> stop_job=immediate
Are you sure you wish to stop this job ([yes]/no): yes <<==

正常停止后可以查看job状态,是not running状态。
有时候碰到stop pending状态,就需要等待了

3.删除主表

drop table owner_name.job_name;
PS1:如果表名混合大小写的话,在删除时需要使用双引号

drop table SYSTEM."impdp_SCHEM_xxx";

PS2:如果出现主表找不到的情况,可以通过dba_objects找回主表

( dba_objects.owner=dba_datapump_jobs.owner_name AND dba_objects.object_name=dba_datapump_jobs.job_name)

4.通过attach停止job

如果dba_datapump_jobs仍然有作业,但是master表已经被删除,可以通过attach连接上job再停止它。

SET serveroutput on
SET lines 100
DECLARE
   h1 NUMBER;
BEGIN
   h1 := DBMS_DATAPUMP.ATTACH('SYS_EXPORT_TABLE_01','<SCHEMA>');
   DBMS_DATAPUMP.STOP_JOB (h1);
END;
/

本文地址:https://blog.csdn.net/LX19312116/article/details/108984685

相关标签: 数据库 ORACLE