Oracle运维笔记之ORA-27102错误处理-阿里云开发者社区

开发者社区> 数据库> 正文

Oracle运维笔记之ORA-27102错误处理

简介: Oracle运维笔记之ORA-27102错误处理

数据库宕机,在启动实例时报错ORA-27102:
图片.png
第一感觉就是内存不够,用top命令查看内存,使用率不高,所以也不是内存不足问题。
接下来去查看下操作系统内存参数shmmax和shmall,发现数值不知按照实际内存大小配置的。
简单介绍下这2个参数的作用:

shmmax:是核心参数中最重要的参数之一,用于定义单个共享内存段的最大值。设置应该足够大,能在一个共享内存段下容纳下整个的 SGA , 设置的过低可能会导致需要创建多个共享内存段,这样可能导致系统性能的下降
shmall:该参数控制可以使用的共享内存的总页数。 Linux 共享内存页大小为 4KB, 共享内存段的大小都是共享内存页大小的整数倍。
这两个可以设置为内存的 90%,计算方法
shmmax = 物理内存(bytes) / 2 * 90%
shmall = 物理内存(bytes) / pagesize(通常是4096) * 90%

例如,物理内存为64G

shmmax=64102410241024/290%=30923764531
shmall= 64102410241024/409690%=15099494

根据实际内存大小来配置shmmax和shmall后,数据库就正常启动了。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
数据库
使用钉钉扫一扫加入圈子
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

其他文章