31623 oracle,数据泵导出时报ORA-31623、ORA-06512问题的解决

问题描述

同事反应数据库在使用数据泵导出时,导出报UDE-31623、ORA-31623、ORA-06512,大致如下:

9d0704dd2f7564c54c5f4cb3110292a9.png

告警日志信息大致如下:

f55168d174b7be2ef4ce5a05e1f57bca.png

处理过程

(1)第一步,

我以为是streams pool size不足或者是sga分配不足导致的,查询后发现sga分配了64G,同时

streams pool size = 256M;故内存分配不足的问题呗排除了;

(2)第二步,根据MOS文档(

文档 ID 1907256.1

)来逐一排查,均排除了因对象失效等原因;

(3)第三步,在排查dba_datapump_jobs视图时,发现里面有340多个终止任务,这个失败的数量令我吃惊,因为正常情况下这个视图下不会有这么多被终止的任务,于是尝试清理这些失败任务:

SELECT o.status,

o.object_id,

o.object_type,

o.owner || '.' || object_name "OWNER.OBJECT"

FROM dba_objects o, dba_datapump_jobs j

WHERE o.owner = j.owner_name

AND o.object_name = j.job_name

AND j.job_name NOT LIKE 'BIN$%'

ORDER BY 4, 2;

根据查询出来的对象,我们使用drop table XXX purge 进行逐一删除,也可以通过脚本进行批量删除;待所有的被终止的对象删除之后,再次尝试数据泵导出,惊喜地发现已经可以 正常导出了。

总结

由此可见,此次故障的原因是

dba_datapump_jobs里面的被终止对象太多,我们将其删除后,问题即可得到解决。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您好!感谢您提问。 ORA-39002、ORA-39070和ORA-39087是Oracle数据库中与数据(Data Pump)相关的错误代码。这些错误通常与导入或导出操作相关,并且可能有不同的原因导致。下面我会分别介绍这些错误的含义和可能的解决方法。 1. ORA-39002: 无效操作 这个错误表示正在尝试执行一个无效的操作。可能的原因包括: - 没有足够的权限执行该操作。请确保您具有执行所需操作的适当权限。 - 操作的语法或参数有误。请仔细检查您执行的操作,确保语法和参数正确。 2. ORA-39070: 无法打开数据作业 这个错误表示无法打开数据作业。可能的原因包括: - 数据作业已经在运行中。请等待当前作业完成后再尝试打开新的作业。 - 数据作业已经被停止或取消。请检查是否有其他会话或作业正在操作该作业,并确保作业处于可用状态。 3. ORA-39087: 目标文件名无效 这个错误表示指定的目标文件名无效。可能的原因包括: - 指定的目标文件名已经存在或被占用。请尝试使用不同的目标文件名。 - 目标文件名包含非法字符或格式有误。请确保目标文件名符合命名规则和格式要求。 如果您能提供更多的上下文信息,例如具体的操作步骤、命令或脚本,我可以更准确地帮助您解决这些错误。另外,请确保您使用的是最新版本的Oracle数据库和相关工具,以获得最佳的兼容性和稳定性。 希望对您有所帮助!如果您还有其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值