导出报ora-31634、ora-31664

在服务器上通过计划任务部署了oracle的备份任务,最近发现有个表空间没有备份成功,手动执行后,发现报一下错误,百度搜索结果如下

ORA-31634: job already exists(JOB已经存在)

ORA-31664: unable to construct unique job name when defaulted(采用默认方式,不能创建唯一JOB名)

解决方法:

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

select 'drop table ' || owner_name || '.' || job_name || ';'from dba_datapump_jobs where state = 'NOT RUNNING'

复制生成的处理SQL语句,进行对表DBA_DATAPUMP_JOBS进行清理,例句如下:

...............
drop table neands3.SYS_EXPORT_SCHEMA_06;
drop table neands3.SYS_EXPORT_SCHEMA_40;
...............

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

SELECT owner_name, job_name, operation, job_mode,ORDER BY 1,2;