Oracle 异常 ORA-31634 ORA-31664 作业已存在的处理方法

问题:
连接到: 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: 如果采用默认值, 将无法构造唯一的作业名

查找资料,解决方法如下:
第1步:查询生成清理DBA_DATAPUMP_JOBS的SQL语句
SQL> SELECT ‘DROP TABLE ‘ || OWNER_NAME ||’.’|| JOB_NAME ||’;’ FROM DBA_DATAPUMP_JOBS WHERE STATE=’NOT RUNNING’; 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行。

第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’));


数据运维技术 » Oracle 异常 ORA-31634 ORA-31664 作业已存在的处理方法