ORA-27102:out of memory Linux-x86_64 Error: 12: Cannot allocate memory
Posted 雅冰石
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ORA-27102:out of memory Linux-x86_64 Error: 12: Cannot allocate memory相关的知识,希望对你有一定的参考价值。
一 问题描述
无法启动数据库,报错:
二 排查思路
1.确保sga_target,sga_max_size比可用物理内存小
2.检查kernel.shmmax,kernel.shmall是否设置得太小
一般出现ORA-27102:out of memory,是/etc/sysctl.conf种内核参数kernel.shmmax,kernel.shmall设置得小了。
设置原则:
建议设置kernel.shmmax为物理内存的一半;
建议设置kernel.shmall为物理内存/pagesize;
--pagesize这样查:getconf PAGESIZE
确保kernel.shmmax比rac集群种所有实例的sga_max_size/sga_target的和要大;
3.检查是否设置了lock_sga=TRUE,如果设置为TRUE的话,需要调大操作系统对oracle用户
max locked memory的大小。 该值默认是64K:
我这里前两项都是没问题的,第3项有问题。
三 解决办法
(1) 方法一
vi /etc/security/limits.conf,新增如下配置:
oracle hard memlock 237621175
oracle soft memlock 237621175
--注意,这里的大小是服务器内存的大小,单位是KB,我这里是200多G
修改完文件后,再次查看,大小变了:
(2) 方法二
将lock_sga=TRUE改为lock_sga=FALSE,设置memory_target大小。这样就不用改/etc/security/limits.conf文件了,还能使用memory_target自动调整内存的特性
ORA-27102:out of memory Linux-x86_64 Error: 12: Cannot allocate memory的处理_普通网友的博客-CSDN博客
以上是关于ORA-27102:out of memory Linux-x86_64 Error: 12: Cannot allocate memory的主要内容,如果未能解决你的问题,请参考以下文章
orcle-ora-27102:out of memory错误处理
ORA-27102:out of memory Linux-x86_64 Error: 12: Cannot allocate memory
ORA-27102:out of memory Linux-x86_64 Error: 12: Cannot allocate memory
ORA-27102:out of memory Linux-x86_64 Error: 12: Cannot allocate memory
ORA-27102: out of memory Linux-X86_64
Linux下安装oracle快结束的时候报错 ORA-27102:out of memory ORA-01034:ORACLE not a availab