环境:
操作系统:RedHat 5.3 64bit
Oracle版本:Release 10.2.0.1.0
今天启动一台测试的Oracle数据库时,出现如下错如信息:
SQL> startup
ORA-27125: unable to create shared memory segment
Linux-x86_64 Error: 1: Operation not permitted
通过报错信息可以知道是由于无法创建共享内存从而导致无法启动Oracle。通过google查询了下发现出现这个问题和Linux的hugetbl有关系,可以通过如下两种方法来解决这个问题:
①、直接手动修改/proc/sys/vm/hugetlb_shm_group
# more /proc/sys/vm/hugetlb_shm_group
0
# id oracle
uid=504(oracle) gid=505(oinstall) groups=505(oinstall),504(dba)
# echo 504 > /proc/sys/vm/hugetlb_shm_group
②、修改内核
# more /proc/sys/vm/hugetlb_shm_group
0
# id oracle
uid=504(oracle) gid=505(oinstall) groups=505(oinstall),504(dba)
# vim /etc/sysctl.conf
···
vm.hugetlb_shm_group = 504
# sysctl -p
注意只能通过root修改,将dba组的id添加到内科既可,修改完成之后重启Oracle即可。
相关阅读:
SPFILE 错误导致数据库无法启动(ORA-01565)
ORA-01172、ORA-01151错误处理
ORA-00600 [2662]错误解决