2009年5月8日星期五

超过AIX单用户最大进程数导致oracle无法登陆的解决

今天需要登陆到AIX上,往Oracle里面导入一个数据。先是用root身份,然后su切换到Oracle用户,结果发现切换不过去,挂在那里,半天没有反映。等了很久,才出来一个提示:该用户进程数过多,操作失败。

咱不怕,还是用root身份,ps -ef |grep oracle。一看,大约有近百条oracle远程连接进程。因为(LOCALE=NO)。回想起来,我们的确是建立了很多测试帐套和培训帐套,每个帐套都有很多最小连接数,NC一启动,就要建立连接池的,连接就建立了。

而在unix上,Oracle有自己的专属进程,基本上每一个远程连接就启动一个进程。这样oracle进程就超多了,超过了每用户最大128个的上限。oracle用户就再无法连接和登录了。

解决办法:

先查看系统那个设置:

# lsattr -E -l sys0

显示:

maxuproc 128 Maximum number of PROCESSES allowed per user

更改为800

# chdev -l sys0 -a maxuproc=800

再看:

maxuproc 800 Maximum number of PROCESSES allowed per user

su - oracle ,一切正常。

有点好玩的,每次su,都显示[YOU HAVE NEW MAIL]

郎啊郎别太忙 | langalang.blogspot.com


没有评论:

发表评论