1818IP-服务器技术教程,云服务器评测推荐,服务器系统排错处理,环境搭建,攻击防护等

当前位置:首页 - 数据库 - 正文

君子好学,自强不息!

Oracle并发连接数的设置方案

2022-11-24 | 数据库 | gtxyzz | 1060°c
A+ A-

以下的文章会向你介绍Oracle并发连接数在什么的情况下是可以设置,在什么的情况下是不可以对其进行设置的,以及相关的查询解决方案的介绍。以下就是文章的具体内容的介绍,希望你会有所收获,

OERR: ORA-12519 TNS:no appropriate service handler found

客户端连接间歇性失败,报错ORA-12519

Cause:thelistenercouldnotfindanyavailableservicehandlersthatare 
appropriatefortheclientconnection. 
Action:run"lsnrctlservices"toensurethattheinstance(s)haveregistered 
withthelistener,andareacceptingconnections. 

检查lsnrctl service ,instance已经注册,

状态显示ready时,可以连接。

Whenthelistenerbelievesthecurrentnumberofconnectionshasreachedmaximumload, 
itmaysetthestateoftheservicehandlerforaninstanceto"blocked"andbeginrefusing 
incomingclientconnectionswitheitherofthefollowingerrors:ora-12519orora-12516 

采用服务动态注册的方式,由PMON 通过SERVICE_UPDATE 来得到目前连接情况,但SERVICE_UPDATE 有时间间隔,

所以,listener显示的Oracle并发连接数和当前实际的连接数可能不同。

查询解决方法:

查看一下数据库现有的进程数,是否已经达到参数processes的大小。

1.select count(*) from v$process; 取得数据库目前的进程数。

2.select value from v$parameter where name = ‘processes’; 取得进程数的上限。

3.如已达到上限,修改initSID.ora中的processes的大小。

4.重新启动数据库到nomount状态下,执行create spfile from pfile; 并startup open。

查询数据库自启动以来***的并发数量

修改***Oracle并发连接数:

altersystemsetprocesses=300scope=spfile;

重启数据库:

shutdownimmediate; 
startup; 

查看当前有哪些用户正在使用数据

SELECTosuser,a.username,cpu_time/executions/1000000||'s',sql_fulltext,machine 
fromv$sessiona,v$sqlareab 
wherea.sql_address=b.addressorderbycpu_time/executionsdesc; 

2

有的时候我们需要调整oracle数据库的***链接数,而这个链接数的调整是在oacle下的dbs目录下init.ora文件中调整的。

Oracle并发连接数(sessions)与其参数文件中的进程数(process)有关,它们的关系如下:

sessions=(1.1*process+5)

但是我们增加process数时,往往数据库不能启动了。这因为我们还漏调了一个unix系统参数:它是核心参数中的semmns,这是unix系统的信号量参数。每个process会占用一个信号量。semmns调整后,需要重新启动unix操作系统,参数才能生效。不过它的大小会受制于硬件的内存或ORACLE SGA。范围可从200

本文来源:1818IP

本文地址:https://www.1818ip.com/post/11268.html

免责声明:本文由用户上传,如有侵权请联系删除!

发表评论

必填

选填

选填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。