删除DBA_DATAPUMP_JOBS中的失败数据泵作业

在linux系统中做了crontab定时任务定时备份数据库,不知道什么原因,近期备份数据库自动中断了,也没有什么报错日志,导致产生了很多的SYS_EXPORT_SCHEMA_01、SYS_EXPORT_SCHEMA_02…,这时候就需要把这些失败的作业清除了。

SYS_EXPORT_FULL_01、SYS_EXPORT_FULL_02…是一个完整的数据库导出作业,SYS_EXPORT_SCHEMA_01、SYS_EXPORT_SCHEMA_02…不是一个完整的数据库导出作业,状态是NOT RUNNING,意味着作业是暂时的停止,实际上作业失败了也是NOT RUNNING状态。

SELECT 
	owner_name, job_name, rtrim(operation) "OPERATION", 
	rtrim(job_mode) "JOB_MODE", state, attached_sessions 
FROM 
	dba_datapump_jobs WHERE job_name NOT LIKE 'BIN$%' ORDER BY 1, 2;

执行以上语句,如下图:
删除DBA_DATAPUMP_JOBS中的失败数据泵作业_第1张图片

SELECT 
	o.status, o.object_id, o.object_type, o.owner || '.' || object_name "OWNER.OBJECT" 
FROM 
	dba_objects o, dba_datapump_jobs dj 
WHERE 
	o.owner = dj.owner_name AND o.object_name = dj.job_name 
	AND dj.job_name NOT LIKE 'BIN$%' ORDER BY 4, 2;

执行以上语句,查看作业的master表,如下图:
删除DBA_DATAPUMP_JOBS中的失败数据泵作业_第2张图片
这表示以前(可能是较早以前)停止的作业,然而这些作业是不可能重新启动了,所以完全可以删除这些master表。使用下面语句可以进行删除(具体情况得根据自己实际情况来修改),如图:

drop table NC65PROD.SYS_EXPORT_FULL_01;
drop table NC65PROD.SYS_EXPORT_SCHEMA_01;

删除DBA_DATAPUMP_JOBS中的失败数据泵作业_第3张图片
查看是否删除成功,如图:
在这里插入图片描述

你可能感兴趣的:(数据库)