zoukankan      html  css  js  c++  java
  • SUSE Linux 报错:too many open files in system

    

    现网执行的oracle数据库,有一天突然报错(alert日志):too many open files in system,须要对操作系统同意句柄数进行扩充,查阅了非常多资料,改动点主要集中在例如以下几个文件:

    1./proc/sys/fs/file-max

    2./etc/sysctl.conf

    3./etc/security/limits.conf

    还有通过命令改动的方法,如ulimit -n 65535


    以下以我实际的经验说一下,我改动的是/etc/security/limits.conf,

    oracle soft nofile 2048 
    oracle hard nofile 32768 
    oracle soft nproc 2048 
    oracle hard nproc 32768 

    以下重点说明一下上面这些值是什么含义:
    1.第一个字段是对指定用户的限制,假设改为星号,则表示对不论什么用户都适用
    2.第二个字段。soft是软限制,hard时硬限制。这么说。太难懂了。实际是什么意思呢? 在oracle用户下。你能够通过命令去改动自己限制,可是这个限制值不能超过hard相应的值。而你假设不改的话,那默认的限制就是soft相应的值。(能够通过ulimit -n 等方式改动)
    3.nofile 是限制单个进程能够使用的句柄数,通过lsof能够查看某个用户指定进程使用的句柄数,通过实际情况来看,lsof查看到进程使用的句柄数要达到nofile 相应值得一倍,详细他们之间是什么关系,没有弄清楚。
    4.nproc是限制用户能够启动的进程数,实际測试来看。通过ps命令查看到的进程数要小于配置的值。

    总而言之。通过上面的配置,能够改变对进程可使用句柄数、可启动的进程数做到限制。

    /etc/security/limits.conf文件介绍资料:http://hi.baidu.com/linuxtrip/item/cea1f3cf6a11c601c710b2b3

  • 相关阅读:
    2.6.2.MySQL主从复制的原理
    2.4.5 MySQL InnoDB重做与回滚介绍
    PRML读书笔记_绪论曲线拟合部分
    python3_字符串
    PRML读书笔记_绪论
    python3_列表、元组、集合、字典
    linux_软件安装
    shell获取帮助
    linux_查看磁盘与目录容量
    linux_压缩解压命令(zip/tar)
  • 原文地址:https://www.cnblogs.com/mengfanrong/p/5169705.html
Copyright © 2011-2022 走看看