Linux Oracle 9i
维护人员反映数据库无法连接,现象是:tnsping 可以通,但是用sqlplus连接就无法连接,没有报错,就是一直挂在那边。前台应用程序是无法登录 。
处理过程:
登录数据库查看日志,正常。用sqlplus "/as sysdba" 可以登录 。show parameter session查是是330。查看监听日志是否超过2G(没有)。 怀疑是否是监听做怪,故重启一下监听。发现一样的结果。
这里能过查看netstat -na 发现有非常从的1521的端口。这时怀疑是否是系统内核参数设置不足。
手工kill 一个oracle 的连接进程后,通过过程客户端即可以登录。这样故障原因明确。
设置
kernel.sem = 300 38400 300 128
上面的参数,加其加大。要来root口令:sysctl -p
搞定,收工。