OS 版本     :HP-UX B.11.31
Oracle版本:11.2.0.4 (RAC)

(一)问题描述

最近发现无法连接上数据库,报错信息为“ORA-00020:maximum number of processes (3000) exceeded”,很明显是数据库的进程数量已经达到了最大值,可用过v$process确认

SQL> select count(*) from v$process;

  COUNT(*)
----------
3000

于是打算将数据库参数processes改大一些,直接修改为6000。修改命令如下:

SQL> alter system set processes=6000 scope=spfile sid='*';

重启节点:
srvctl stop instance -d {oracle_name} -i {instance_name}

srvctl start instance -d {oracle_name} -i {instance_name}
在重启时候,发现有错误提示:
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

(二)解决方案

通过查找资料,可通过修改OS内核参数解决,可以使用SAM修改,也可使用kctune工具修改,这里使用kctune工具修改,修改过程如下

(1)确认semm*参数的当前值

oracledb2#[/]kctune | grep semm
semmni    5120 5120
semmns    8192 8192
semmnu    4092 4092
semmsl    2048 Default Immed

(2)修改semmni参数
oracledb2#[/]kctune semmni=8192
==> Update the automatic 'backup' configuration first? y
* The automatic 'backup' configuration has been updated.
* Future operations will update the backup without prompting.
NOTE: The requested changes could not be applied to the currently
running system, for the following reasons:
- The tunable 'semmni' cannot be changed without a reboot.
* The requested changes have been saved, and will take effect at
next boot.
Tunable              Value     Expression
semmni (now)         5120      5120
       (next boot)   8192      8192

(3)修改semmns的值
oracledb2#[/]kctune semmns=16384
* The automatic 'backup' configuration has been updated.
NOTE: The requested changes could not be applied to the currently
running system, for the following reasons:
- The tunable 'semmns' cannot be changed without a reboot.
* The requested changes have been saved, and will take effect at
next boot.
Tunable             Value    Expression
semmns (now)        8192     8192
       (next boot)  16384    16384

(4)修改nproc参数的值,该参数修改后立刻生效
oracledb2#[/]kctune nproc=8192
* The automatic 'backup' configuration has been updated.
WARNING: The validity of the tunable values could not be completely
verified, because the value of the tunable 'process_id_max'
will not be known until the system is booted. The tunable
values will be verified during boot. Please check the console
messages during boot to see if there are any tunable value
errors.
* The requested changes have been applied to the currently
running configuration.
Tunable           Value          Expression     Changes
nproc (before)    6144           6144           Immed
      (now)       8192           8192

(5)修改semmnu的值
oracledb2#[/]kctune semmnu=8188
* The automatic 'backup' configuration has been updated.
NOTE: The requested changes could not be applied to the currently
running system, for the following reasons:
- The tunable 'semmnu' cannot be changed without a reboot.
* The requested changes have been saved, and will take effect at
next boot.
Tunable            Value     Expression
semmnu (now)       4092      4092
       (next boot) 8188      8188

需要注意的是,在修改semmnu之前,需要确定nproc的值,确保:nproc >= semmnu + 4。

错误示范:

oracledb2#[/]kctune semmnu=8188
ERROR: The values of the tunables 'semmnu' (8188) and 'nproc' (6144)
do not satisfy the requirement:
nproc >= semmnu + 4

在改完参数之后,需要重启OS,参数才能生效。接着再重启数据库,正常启动。

HP-UNIX平台修改Oracle processes参数报错:ORA-27154、ORA-27300、ORA-27301、ORA-27302的更多相关文章

  1. 修改oracle数据库内存报错

    今天修改oracle数据库内存时, alter system set memory_max_target=10240M scope=spfile;语句正确修改:但重启时却报错 : SQL> al ...

  2. 单元测试时候使用[ClassInitialize]会该方法必须是静态的公共方法,不返回值并且应采用一个TestContext类型的参数报错的解决办法

    using Microsoft.VisualStudio.TestTools.UnitTesting; 如果该DLL应用的是 C:\Program Files\Microsoft Visual Stu ...

  3. Oracle Online Patching报错"This is not a RAC setup. OPatch cannot determine the local node name"

    Oracle Online Patching报错"This is not a RAC setup. OPatch cannot determine the local node name&q ...

  4. 安装Oracle 11gR2,报错:[INS-06101] IP address of localhost could not be determined

    安装Oracle 11gR2,报错:[INS-06101] IP address of localhost could not be determined 出现这种错误是因为主机名和/etc/host ...

  5. [转]ORACLE 11G 导出报错(EXP-00003)未找到段 (0,0) 的存储定义

    http://blog.csdn.net/qq_19524879/article/details/51313205 ORACLE 11G 导出报错(EXP-00003)未找到段 (0,0) 的存储定义 ...

  6. Oracle Client安装报错

    Oracle Client安装报错:引用数据不可用于验证此操作系统分发的先决条件 http://tunps.com/p/11797.html 原因是Oracle Client 11g版本不支持最新的W ...

  7. 【spring mvc】后台spring mvc接收List参数报错如下:org.springframework.beans.BeanInstantiationException: Failed to instantiate [java.util.List]: Specified class is an interface

    后台spring mvc接收List参数报错如下:org.springframework.beans.BeanInstantiationException: Failed to instantiate ...

  8. 修改umask后apache报错:because search permissions are missing on a component of the path,

    0.修改umask后apache报错:because search permissions are missing on a component of the path, 1.ls -lrth ./h ...

  9. 【EWM系列】SAP EWM模块-修改任何内容都报错

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[EWM系列]SAP EWM模块-修改任何内容都 ...

随机推荐

  1. python logging的应用

    #-*-coding:utf-8-*-#util import logging import logging from logging.handlers import RotatingFileHand ...

  2. lib 和 dll

    dll 和 lib只有在windows平台才会出现,老是忘记他们的区别和联系,记录一下,以备不时之需,也加深一下印象.  在弄懂两者的区别之前,需要知道两个概念: static library 和 d ...

  3. spring cglib 与 jdk 动态代理

    1. 概述 JDK动态代理是利用java反射机制 生成一个实现接口的匿名类, 在调用具体方法前调用InvocationHandler来处理 Cglib动态代理是 利用asm开源包 把被代理类的clas ...

  4. elentment-ui解析

    序言 现在前端的技术越来越杂,也越来越细了,以至于每次看完文档都会有个错觉,就是自己差不多会了.真正去做项目的时候又是重复之前的步骤. 之前写Java的时候,会习惯性的看看源码,看完之后会对知识掌握的 ...

  5. input框中如何添加搜索

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. IIFE

    一.IIFE IIFE:immediately-invoked function expression,即时调用函数表达式. 如果一个函数,在定义的时候,就想直接调用它,就是一个IIFE. 函数执行方 ...

  7. Http重要知识点

  8. Netty入门3之----Decoder和Encoder

    ​ Netty强大的地方,是他能方便的实现自定义协议的网络传输.在上一篇文章中,通过使用Netty封装好的工具类,实现了简单的http服务器.在接下来的文章中,我们看看怎么使用他来搭建自定义协议的服务 ...

  9. html5自我总结

    2017年7月30日 合抱之木,生于毫末.九层之台,起于累土.软件行业要熟记和训练的东西有很多,在此,写一下如何快速搭建html及自我见解(这里只介绍我自己用到的,还有部分存在但是用不到的就不讲解了) ...

  10. 在 Linux 中使用 Azure Premium 存储的基本优化指南

    Note 以下测试和结果都是基于 CentOS 6.5.对于其他版本,请参考本文档,并自行进行相关测试. 建议使用最新的内核版本 一般情况下,新的内核版本能解决老版本中存在的问题,添加对新出现硬件的支 ...