查看: 19428|回复: 4

expdp任务如何停止

[复制链接]
论坛徽章:
0
跳转到指定楼层
1#
发表于 2014-7-16 14:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
之前做数据库expdp, 一直卡在

Processing object type SCHEMA_EXPORT/PROCEDURE/ALTER_PROCEDURE

然后我看了job,发现:
SYS@iris> select * from dba_datapump_jobs;

OWNER_NAME                     JOB_NAME                       OPERATION
------------------------------ ------------------------------ ------------------------------------------------------------------------------------------
JOB_MODE                                                                                   STATE                              DEGREE ATTACHED_SESSIONS
------------------------------------------------------------------------------------------ ------------------------------ ---------- -----------------
DATAPUMP_SESSIONS
-----------------
SYS                            SYS_EXPORT_SCHEMA_01           EXPORT
SCHEMA                                                                                     EXECUTING                               8                 1
               10

SYS                            SYS_EXPORT_SCHEMA_02           EXPORT
SCHEMA                                                                                     STOP PENDING                            8                 0
                9

SYSTEM                         SYS_EXPORT_SCHEMA_02           EXPORT
SCHEMA                                                                                     NOT RUNNING                             0                 0
                0


我想停止所有的job,但是不行啊,

oracle@stageip1:/export/oracle > expdp system/iris attach=SYS_EXPORT_SCHEMA_01

Export: Release 11.2.0.3.0 - Production on Wed Jul 16 01:21:00 2014

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning and Automatic Storage Management options
ORA-31626: job does not exist
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 79
ORA-06512: at "SYS.KUPV$FT", line 405
ORA-31638: cannot attach to job SYS_EXPORT_SCHEMA_01 for user SYSTEM
ORA-31632: master table "SYSTEM.SYS_EXPORT_SCHEMA_01" not found, invalid, or inaccessible
ORA-00942: table or view does not exist


oracle@stageip1:/export/oracle >
oracle@stageip1:/export/oracle > expdp system/iris attach=SYS_EXPORT_SCHEMA_02

Export: Release 11.2.0.3.0 - Production on Wed Jul 16 01:21:13 2014

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning and Automatic Storage Management options
ORA-39002: invalid operation
ORA-39000: bad dump file specification
ORA-39140: dump file "/u01/app/oracle/product/11.2.0/dbhome_3/rdbms/log/Iris_U.dmp" belongs to job "SYS"."SYS_EXPORT_SCHEMA_02"


我的问题是:
怎么停止所有的job呢?

急求,谢谢!!



论坛徽章:
5
宝马
日期:2014-01-07 09:08:00技术图书徽章
日期:2014-01-26 14:02:052014年新春福章
日期:2014-02-18 16:49:31马上有钱
日期:2014-02-18 16:49:31优秀写手
日期:2014-02-22 06:00:13
2#
发表于 2014-7-16 15:03 | 只看该作者
你这个问题是由于在使用expdp导出的过程中出现了问题,比如磁盘空间不足,导致了这个expdp卡住了。

其实是因为在使用expdp的时候,会在数据库里面创建一张相关的表,如果你有设置expdp的job名,那么这个表名就是你这个job的名字,如果没有设置的话,Oracle会自动设置一个名字。

你在dba_datapump_jobs这张表里面看到的,就是expdp在导出过程中出现问题,导致了与这个expdp相关的job卡住了。因此,你只需要drop掉这相关的表就可以重新调用。

可以以system用户登陆数据库,或者sys,然后drop table SYS_EXPORT_SCHEMA_01 purge删除表,之后即可重新调用与这相关的expdp。

使用道具 举报

回复
论坛徽章:
5
宝马
日期:2014-01-07 09:08:00技术图书徽章
日期:2014-01-26 14:02:052014年新春福章
日期:2014-02-18 16:49:31马上有钱
日期:2014-02-18 16:49:31优秀写手
日期:2014-02-22 06:00:13
3#
发表于 2014-7-16 15:05 | 只看该作者
另外,你通过ps -ef | grep expdp查看一下当前这个expdp是否在进行工作。

如果进程已经结束工作了,你查看dba_datapump_jobs表里面能看到相关的表存在,那么再进行删除。

使用道具 举报

回复
论坛徽章:
317
季节之章:春
日期:2012-06-20 17:38:14季节之章:夏
日期:2012-06-12 10:49:25季节之章:秋
日期:2012-06-12 10:49:25季节之章:冬
日期:2012-06-12 10:49:25马上有钱
日期:2014-06-16 15:59:19蓝色妖姬
日期:2012-05-19 11:02:10蓝色妖姬
日期:2012-06-12 11:21:48蓝色妖姬
日期:2012-06-12 11:21:48玉兔
日期:2012-07-27 11:00:12玉兔
日期:2012-08-05 10:00:09
4#
发表于 2014-7-16 17:03 | 只看该作者
清除数据库DBA_DATAPUMP_JOBS中僵死的expdp任务

-- 查找数据泵作业:

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;

OWNER_NAME JOB_NAME            OPERATION JOB_MODE  STATE       ATTACHED
---------- ------------------- --------- --------- ----------- --------
SCOTT      EXPDP_20051121      EXPORT    SCHEMA    EXECUTING          1
SCOTT      SYS_EXPORT_TABLE_01 EXPORT    TABLE     NOT RUNNING        0
SCOTT      SYS_EXPORT_TABLE_02 EXPORT    TABLE     NOT RUNNING        0
SYSTEM     SYS_EXPORT_FULL_01  EXPORT    FULL      NOT RUNNING        0

-- 查找数据泵的 master 表:

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;

STATUS   OBJECT_ID OBJECT_TYPE  OWNER.OBJECT
------- ---------- ------------ -------------------------
VALID        85283 TABLE        SCOTT.EXPDP_20051121
VALID        85215 TABLE        SCOTT.SYS_EXPORT_TABLE_02
VALID        85162 TABLE        SYSTEM.SYS_EXPORT_FULL_01

--删除master表
DROP TABLE scott.sys_export_table_02;

-- 对于启用了 recycle bin 的系统,需要额外运行:
purge dba_recyclebin;

使用道具 举报

回复
论坛徽章:
317
季节之章:春
日期:2012-06-20 17:38:14季节之章:夏
日期:2012-06-12 10:49:25季节之章:秋
日期:2012-06-12 10:49:25季节之章:冬
日期:2012-06-12 10:49:25马上有钱
日期:2014-06-16 15:59:19蓝色妖姬
日期:2012-05-19 11:02:10蓝色妖姬
日期:2012-06-12 11:21:48蓝色妖姬
日期:2012-06-12 11:21:48玉兔
日期:2012-07-27 11:00:12玉兔
日期:2012-08-05 10:00:09
5#
发表于 2014-7-16 17:05 | 只看该作者
正常终止expdp作业:
先查到job_name:
select * from dba_datapump_jobs;
OWNER_NAME   JOB_NAME  OPERATION  JOB_MODE   STATE                              DEGREE ATTACHED_SESSIONS DATAPUMP_SESSIONS
------------------------------------------------------------ ------------------------------ ----------
SYSTEM       SYS_EXPORT_FULL_01    EXPORT   FULL  EXECUTING                               1                 1                 3

attach该任务:
expdp system/sys attach=SYS_EXPORT_FULL_01

Export> stop_job
是否确实要停止此作业 ([Y]/N): y
是否确实要停止此作业 ([Y]/N): Y
是否确实要停止此作业 ([Y]/N): Y
是否确实要停止此作业 ([Y]/N): Y
是否确实要停止此作业 ([Y]/N): Y ---------------就是停止不了,在dba_datapump_jobs还是能查到记录,只是JOB已经停止了。
-----已经解决了,需要输入YES
Export> KILL_JOB
是否确实要停止此作业 ([Y]/N): YES
在执行的时候CTL+C就可以进入交互模式,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 将立即关闭

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表