stream pool设置过小导致impdp失败

数据泵导入时候遇到以下问题,
[oracle@justin pump]$ impdp justin/*** directory=pump dumpfile=justin_20110316.dmp

Import: Release 11.2.0.1.0 - Production on Thu Mar 31 12:32:35 2011

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, Oracle Label Security, OLAP, Data Mining,
Oracle Database Vault and Real Application Testing options

UDI-31623: operation generated ORACLE error 31623
ORA-31623: a job is not attached to this session via the specified handle
ORA-06512: at "SYS.DBMS_DATAPUMP", line 3263
ORA-06512: at "SYS.DBMS_DATAPUMP", line 4488
ORA-06512: at line 1

查看metalink,有以下解释
Cause
For submitting an export job with datapump utility, we use queues, streams and java objects.
SQL tracing confirms that.

If we see any component is not valid in the database, we will see these errors.
By querying dba_registry we find the different component and their status.

SELECT comp_name, status, version
FROM dba_registry;


Solution
We can validate different components in the database by running $ORACLE_HOME/rdbms/admin/catpatch.sql via SQL*Plus:


spool catpatch.log
connect / as sysdba
shutdown immediate
startup migrate
SELECT comp_name, version, status
FROM dba_registry;
spool off

If you are on 10g Release 2, then perform.:

connect / as sysdba
spool dictreload.log
startup restrict
alter system set shared_pool_size = 512M scope=spfile;
alter system set java_pool_size = 150M scope=spfile;
alter system set aq_tm_processes = 1 scope=spfile;
alter system set cluster_database = false scope=spfile; -- If on RAC
shutdown immediate
startup upgrade
spool off
alter system set cluster_database = true scope=spfile; -- If on RAC
shutdown immediate
startup


看了感觉完全不搭界,于是查看alertlog,原来是streams pool设置过小造成的
ORA-04031: unable to allocate 56 bytes of shared memory ("streams pool","unknown object","streams pool","fixed allocation callback")
Incident details in: /oracle10g/diag/rdbms/justin/justin/incident/incdir_40167/justin_ora_10439_i40167.trc
查看sga,只有最小的564M,该参数又不能直接通过alter命令修改
SQL> show parameter sga_ma

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
sga_max_size                         big integer 564M
SQL> ALTER SYSTEM set sga_max_size=1g;
ALTER SYSTEM set sga_max_size=1g
                 *
ERROR at line 1:
ORA-02095: specified initialization parameter cannot be modified

手工修改init文件,将sga_max_size设置成2g,然后生成spfile,再次执行导入成功

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/15480802/viewspace-691380/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/15480802/viewspace-691380/

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值