« Oracle Express版本的数据库选件 | Blog首页 | 不能忘却的纪念 - 职业生涯第一个项目竣工 »
TNS-12519 与 processes 参数设置
作者:eygle | 【转载请注出处】|【云和恩墨 领先的zData数据库一体机 | zCloud PaaS云管平台 | SQM SQL审核平台 | ZDBM 数据库备份一体机】
链接:https://www.eygle.com/archives/2008/10/tns_12519_process.html
链接:https://www.eygle.com/archives/2008/10/tns_12519_process.html
今天遇到这样一个小问题,客户程序连接数据库遇到了TNS-12519错误:
TNS-12519: TNS:no appropriate service handler found
在监听器日志中也能看到这个错误信息。
这个错误以前还真是没有遇到过,Oracle文档提示:
ORA-12519: TNS:no appropriate service handler found
Cause: The listener could not find any available service handlers that are appropriate for the client connection.
Action: Run "lsnrctl services" to ensure that the instance(s) have registered with the listener, and are accepting connections.
检查了数据库的监听等一切正常,唯一的问题在于processes进程数量设置的太小,仅有40.
将这个参数修改为150,重启数据库一切恢复正常:
SQL> alter system set processes=150 scope=spfile;System altered.
此外在数据库的日志中还能够看到如下提示:
Tue Oct 28 20:01:25 2008
starting up 4 shared server(s) ...
Oracle Data Guard is not available in this edition of Oracle.
发现Oracle的告警日志信息提示越来越全面详尽。
历史上的今天...
>> 2011-10-29文章:
>> 2010-10-29文章:
>> 2007-10-29文章:
>> 2006-10-29文章:
>> 2005-10-29文章:
By eygle on 2008-10-29 10:00 | Comments (1) | Case | FAQ | 2072 |
前段时间有个库也经常碰到这个错,连接数其实没到processes上限。
最后原因是有个程序使用短连接反复连接断开,
而监听是通过pmon的serivce update来得到实际连接,但是监听只记录连接数,不记录断开的连接数,所以两次serivce update之中放行的连接数是最大processses减去上次得到的数据库连接,短连接过多最终导致这个报错。