oracle error31623,数据泵导出出现ORA-31623错误

客户数据库在调整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, sid=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,还是第一次发现这个问题。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值