暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

ORA-04031: unable TO allocate 3432 bytes

老杨 2019-03-26
1339

问题描述

数据库的ASM实例出现了ORA-4031错误,导致了数据库实例的崩溃。
详细的错误信息为:

Wed Jul 25 08:03:45 2012
Errors IN file /u01/app/oracle/diag/rdbms/orcl/ORCL1/trace/ORCL1_asmb_34668994.trc (incident=808023):
ORA-04031: unable TO allocate 3432 bytes OF shared memory ("shared pool","unknown object","sga heap(1,0)","ASM file")
Incident details IN: /u01/app/oracle/diag/rdbms/orcl/ORCL1/incident/incdir_808023/ORCL1_asmb_34668994_i808023.trc
Wed Jul 25 08:03:47 2012
Trace dumping IS performing id=[cdmp_20120725080347]
Errors IN file /u01/app/oracle/diag/rdbms/orcl/ORCL1/trace/ORCL1_asmb_34668994.trc:
ORA-15064: communication failure WITH ASM instance
ORA-04031: unable TO allocate 3432 bytes OF shared memory ("shared pool","unknown object","sga heap(1,0)","ASM file")
ASMB (ospid: 34668994): terminating the instance due TO error 15064
Wed Jul 25 08:03:47 2012
ORA-1092 : opiodr aborting process UNKNOWN ospid (29819058_1)
Wed Jul 25 08:03:48 2012
Errors IN file /u01/app/oracle/diag/rdbms/orcl/ORCL1/trace/ORCL1_q002_25886884.trc:
ORA-15064: communication failure WITH ASM instance
Wed Jul 25 08:03:47 2012
Errors IN file /u01/app/oracle/diag/rdbms/orcl/ORCL1/trace/ORCL1_arc3_36503776.trc:
ORA-15064: communication failure WITH ASM instance
Wed Jul 25 08:03:47 2012
Errors IN file /u01/app/oracle/diag/rdbms/orcl/ORCL1/trace/ORCL1_q001_32374808.trc:
ORA-15064: communication failure WITH ASM instance
Errors IN file /u01/app/oracle/diag/rdbms/orcl/ORCL1/trace/ORCL1_arc3_36503776.trc:
ORA-15064: communication failure WITH ASM instance
Master archival failure: 15064
Wed Jul 25 08:03:48 2012
ORA-1092 : opiodr aborting process UNKNOWN ospid (12058986_1)
Wed Jul 25 08:03:49 2012
ORA-1092 : opitsk aborting process
Wed Jul 25 08:03:49 2012
License high water mark = 334
Instance TERMINATED BY ASMB, pid = 34668994
USER (ospid: 35914002): terminating the instance
Instance TERMINATED BY USER, pid = 35914002


专家解答

显然数据库实例的出现的崩溃是由于ASM实例的错误导致的。根据Oracle的推荐,在11g中使用MEMORY_TARGET参数的话,那么MEMORY_TARGET至少应该分配256M以上,而且随着DISK GROUP的容量的增长,SHARED_POOL所需要的空间也随着增加。因此对于磁盘组空间比较大的ASM实例而言,采用默认参数作为MEMORY_TARGET显然是不够的。
对于当前环境,只需要简单的调整ASM实例的MEMORY_TARGET参数,将其扩大到500M以上,就可以避免该错误的产生。

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

评论