0

数据泵导出出现ORA-31623错误

老杨 2019-04-18
437

问题描述

客户数据库在调整SGA后,导出出现ORA-31623错误。
Oracle对于这个错误的描述为:

ORA-31623: a job IS NOT attached TO this SESSION via the specified handle
Cause: An attempt TO reference a job USING a handle which IS invalid OR no longer valid FOR the CURRENT SESSION.
Action: SELECT a handle corresponding TO a valid active job OR START a NEW job.


专家解答

从这个错误看不出导致问题的真正原因,不过从告警日志中可以发现进一步的信息:

Tue Jan 17 19:30:08 2012
Errors IN file /opt/oracle/diag/rdbms/mobiledb_n/mobiledb/trace/mobiledb_ora_17167.trc (incident=84810):
ORA-04031: unable TO allocate 56 bytes OF shared memory ("streams pool","unknown object","streams pool","fixed allocation callback")
Incident details IN: /opt/oracle/diag/rdbms/mobiledb_n/mobiledb/incident/incdir_84810/mobiledb_ora_17167_i84810.trc
USE ADRCI OR Support Workbench TO package the incident.
See Note 411.1 at My Oracle Support FOR error AND packaging details.
Tue Jan 17 19:30:11 2012
Dumping diagnostic DATA IN directory=[cdmp_20120117193011], requested BY (instance=1, osid=17167), summary=[incident=84810].
Tue Jan 17 19:30:12 2012
Sweep [inc][84810]: completed
Sweep [inc2][84810]: completed

数据库在尝试分配STREAMS POOL的时候出现了ORA-4031错误。此时查询V$MEMORY_RESIZE_OPS视图,发现同一时间大量的STREAMS POOL扩展失败的记录,Oracle尝试分配STREAMS POOL但是目前数据库的内存采用了在SGA_TARGET下手工分配的方式,为了避免Oracle内存的动态调整,所有的内存组件已经将内存全部使用,因此STREAMS POOL无法获取到空间。
解决问题的方法很简单,手工收缩DB_CACHE_SIZE或SHARED_POOL_SIZE的值,分配给STREAMS POOL,就可以避免这个错误,不过数据泵的导出还要使用STREAMS POOL,还是第一次发现这个问题。

「喜欢文章,快来给作者赞赏墨值吧」
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

关注
最新发布
暂无内容,敬请期待...
数据库资讯
最新 热门 更多
本月热门
近期活动
全部
暂无活动,敬请期待...
相关课程
全部