ORA-31634: 作业已存在

 

 服务器上数据泵定时备份任务失败,查看日志报错如下:

 

[oracle@hs02 log]$ more expdp_bi_2019-11-02.log

Export: Release 11.2.0.4.0 - Production on 星期六 11月 2 00:00:03 2019

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

连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
ORA-31634: 作业已存在
ORA-31664: 如果采用默认值, 将无法构造唯一的作业名

tar: bi-2019-11-02*:无法 stat: 没有那个文件或目录
tar: 由于前次错误,将以上次的错误状态退出
-rw-r--r-- 1 oracle oinstall 557 10月 21 00:00 ./expdp_bi_2019-10-21.log

 

查找资料,解决方法如下:

 

第1步:查询生成清理DBA_DATAPUMP_JOBS的SQL语句

SQL> SELECT 'DROP TABLE ' || OWNER_NAME ||'.'|| JOB_NAME ||';' FROM DBA_DATAPUMP_JOBS WHERE   STATE='NOT RUNNING';

'DROPTABLE'||OWNER_NAME||'.'||JOB_NAME||';'
-------------------------------------------------------------------------
DROP TABLE SYSTEM.SYS_EXPORT_SCHEMA_01;
DROP TABLE SYSTEM.SYS_EXPORT_SCHEMA_02;
DROP TABLE SYSTEM.SYS_EXPORT_SCHEMA_19;
DROP TABLE SYSTEM.SYS_EXPORT_SCHEMA_03;
DROP TABLE SYSTEM.SYS_EXPORT_SCHEMA_04;
DROP TABLE SYSTEM.SYS_EXPORT_SCHEMA_05;
DROP TABLE SYSTEM.SYS_EXPORT_SCHEMA_06;
DROP TABLE SYSTEM.SYS_EXPORT_SCHEMA_07;
DROP TABLE SYSTEM.SYS_EXPORT_SCHEMA_08;

已选择8行。

执行SQL

 

第2步:  清理后再次查询确认DBA_DATAPUMP_JOBS是否清理完毕

 

SQL>  SELECT OWNER_NAME, JOB_NAME, OPERATION, JOB_MODE,STATE, ATTACHED_SESSIONS FROM DBA_DATAPUMP_JOBS ORDER BY 1,2;

未选定行

 

  PS:如果清理失败,则执行如下语句进行处理

EXEC DBMS_DATAPUMP.STOP_JOB(DBMS_DATAPUMP_ATTACH(‘SYS_EXPORT_SCHEMA_02’,’OAK’));

  

posted @ 2019-11-13 11:35  文水凡  阅读(2202)  评论(0编辑  收藏  举报