临时方法是ulimit -n 8192 这个方法是临时的,也就是重启电脑或者重新登录后又会恢复成1024,且只有 root 用户有权限改。
永久方法:
修改以下两个文件:
1./etc/security/limits.conf
vi /etc/security/limits.conf
加上:
* soft nofile 10240
* hard nofile 20480
(数目按情况自己改)
2./etc/pam.d/login
vi /etc/pam.d/login
在后面加上
session required pam_limits.so
远程连接到linux服务器,或者本地登录:su -oracle
sqlplus /nolog 连接到数据库;
conn / assysdba
show parametersession
alter system set sessions =values(比如400) scope =spfile//注意此处的分号;
show parameterprocess
alter system set processes =values(比如450)scope = spfile//注意此处的分号;
show parameterlicense //查看最大的process;
重新启动服务器;
ORACLE的连接数(sessions)与其参数文件中的进程数(process)有关,两者的关系如下:
sessions=(1.1*process+5)
但是增加process数时,往往数据库不能启动了。这因为还漏调了一个unix系统参数:/etc/system/中semmns,这是unix系统的信号量参数。每个process会占用一个信号量。semmns调整后,需要重新启动unix *** 作系统,参数才能生效。不过大小会受制于硬件的内存或ORACLE SGA。范围可从200——2000不等。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)