Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1987070
  • 博文数量: 176
  • 博客积分: 1857
  • 博客等级: 上尉
  • 技术积分: 2729
  • 用 户 组: 普通用户
  • 注册时间: 2012-04-14 22:55
个人简介

吾生有涯,而知无涯,适当止学.循序渐进,步步提升 Talk is cheap, show me the code.

文章分类

全部博文(176)

文章存档

2019年(1)

2018年(14)

2017年(20)

2016年(31)

2015年(15)

2014年(5)

2013年(10)

2012年(80)

分类: Oracle

2017-12-04 09:47:18

场景描述:每天晚上一个定时脚本,导出的备份空间不足,手动导出报如下错误:

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 CONOW.SYS_EXPORT_SCHEMA_06;
drop table CONOW.SYS_EXPORT_SCHEMA_40;
drop table CONOW.SYS_EXPORT_SCHEMA_07;
drop table CONOW.SYS_EXPORT_SCHEMA_82;
...............

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

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

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

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

阅读(8011) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~