重庆思庄Oracle、Redhat认证学习论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3744|回复: 2
打印 上一主题 下一主题

[Oracle] oracle启动的时候报 ORA-27154、ORA-27300、ORA-27301、ORA-27302

[复制链接]
跳转到指定楼层
楼主
发表于 2020-1-8 12:02:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如题:

oracle启动的时候报 ORA-27154、ORA-27300、ORA-27301、ORA-27302



今天刚装了oracle11g,配制好了之后启动数据库时遇到下面的错误:
SQL> startup
ORA-27154: post/wait create failed
ORA-27300: OS system dependent operation:semget failed with status: 28
ORA-27301: OS failure message: No space left on device
ORA-27302: failure occurred at: sskgpcreates


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 支持支持 反对反对
回复

使用道具 举报

沙发
发表于 2020-1-8 16:12:01 | 只看该作者
本帖最后由 jiawang 于 2020-1-8 16:14 编辑

官方解释:is semmns设置得太低
CAUSE
Cause is semmns is set too low.

SOLUTION
set semmns 32767
Make changes to increase number of semaphores on the system. For example: Linux /etc/sysctl.conf

sem=semmsl semmns semopm semmni
kernel.sem = 256 32768 100 228

Tuning Semaphore Parameters. Refer to the following guidelines.

1. Calculate the minimum total semaphore requirements using the following formula:

2*sum (process parameters of all database instances on the system) + overhead for background processes + system and other applications.

2. Set semmns (total semaphores systemwide) to this total.

3. Set semmsl (semaphores for each set ) to 256

4. Set semmni (total semaphores sets) to semmns devided by semmsl, rounded up to the nearest multiple of 1024

Example of default setting in /etc/sysctl.conf on Oracle Linux:

[root@node1 etc]# cat /etc/sysctl.conf
# Kernel sysctl configuration file for Oracle Enterprise Linux
#
# For binary values, 0 is disabled, 1 is enabled.  See sysctl(8) and
# sysctl.conf(5) for more details.

# Controls IP packet forwarding
net.ipv4.ip_forward = 0

# Controls source route verification
# See /usr/share/doc/kernel-doc-*/Documentation/networking/ip-sysctl.txt
net.ipv4.conf.default.rp_filter = 2

# Do not accept source routing
net.ipv4.conf.default.accept_source_route = 0

# Controls the System Request debugging functionality of the kernel
kernel.sysrq = 0

# Controls whether core dumps will append the PID to the core filename
# Useful for debugging multi-threaded applications
kernel.core_uses_pid = 1

# Controls the use of TCP syncookies
net.ipv4.tcp_syncookies = 1

# Controls the maximum size of a message, in bytes
kernel.msgmnb = 65536

# Controls the default maxmimum size of a mesage queue
kernel.msgmax = 65536

# Controls the maximum shared segment size, in bytes
kernel.shmmax = 68719476736

# Controls the maximum number of shared memory segments, in pages
kernel.shmall = 4294967296
fs.file-max = 6815744
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.wmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
kernel.sem = 250  100

Make changes, at the bottom of /etc/sysctl.conf replace kernel.sem and add the following:

sem=semmsl semmns semopm semmni
kernel.sem = 256 32768 100 228

Then reboot.

This way semmns will be increased to 32768 and you will be able to start all resources.

详情见ORA-27300, ORA-27301 and ORA-27302: failure occurred at: sskgpsemsper when starting ASM instance (Doc ID 1494285.1)文档
回复 支持 反对

使用道具 举报

板凳
 楼主| 发表于 2020-1-10 17:56:41 | 只看该作者
对的,是/etc/sysctl.conf的 sem 被人修改为 只剩后两位导致。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|重庆思庄Oracle、Redhat认证学习论坛 ( 渝ICP备12004239号-4 )

GMT+8, 2024-4-29 12:13 , Processed in 0.095424 second(s), 19 queries .

重庆思庄学习中心论坛-重庆思庄科技有限公司论坛

© 2001-2020

快速回复 返回顶部 返回列表