Java自学者论坛

 找回密码
 立即注册

手机号码,快捷登录

恭喜Java自学者论坛(https://www.javazxz.com)已经为数万Java学习者服务超过8年了!积累会员资料超过10000G+
成为本站VIP会员,下载本站10000G+会员资源,会员资料板块,购买链接:点击进入购买VIP会员

JAVA高级面试进阶训练营视频教程

Java架构师系统进阶VIP课程

分布式高可用全栈开发微服务教程Go语言视频零基础入门到精通Java架构师3期(课件+源码)
Java开发全终端实战租房项目视频教程SpringBoot2.X入门到高级使用教程大数据培训第六期全套视频教程深度学习(CNN RNN GAN)算法原理Java亿级流量电商系统视频教程
互联网架构师视频教程年薪50万Spark2.0从入门到精通年薪50万!人工智能学习路线教程年薪50万大数据入门到精通学习路线年薪50万机器学习入门到精通教程
仿小米商城类app和小程序视频教程深度学习数据分析基础到实战最新黑马javaEE2.1就业课程从 0到JVM实战高手教程MySQL入门到精通教程
查看: 661|回复: 0

关于oracle的连接时ORA-12519错误的解决方案

[复制链接]
  • TA的每日心情
    奋斗
    2024-11-24 15:47
  • 签到天数: 804 天

    [LV.10]以坛为家III

    2053

    主题

    2111

    帖子

    72万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    726782
    发表于 2021-9-5 14:01:13 | 显示全部楼层 |阅读模式

    系统在运行时出现了ORA-12519的错误,无法连接数据库,后来在网上找了下,找到了如下的解决方法,共享下。 
    OERR: ORA-12519 TNS:no appropriate service handler found 客户端连接间歇性失败,报错ORA-12519 
    Cause: the listener could not find any available service handlers that are         appropriate for the client connection. 
    Action:  检查lsnrctl service ,instance已经注册,状态显示ready时,可以连接。 When the listener believes the current number of connections has reached maximum load,  it may set the state of the service handler for an instance to "blocked" and begin refusing  incoming client connections with either of the following errors: ora-12519 or ora-12516 
    采用服务动态注册的方式,由PMON 通过SERVICE_UPDATE 来得到目前连接情况,但SERVICE_UPDATE 有时间间隔, 
    所以,listener显示的连接数和当前实际的连接数可能不同。 
    解决方法就是修改ORACLE的processes的值。 1.process 和session的概念:  
    process:这个参数限制了能够连接到SGA的操作系统进程数(或者是Windows 系统中的线程数),这个总数必须足够大,从而能够适用于后台进程与所有的专用服务器进程,此外,共享服务器进程与调度进程的数目也被计算在内.此外,共享服务器进程与调度进程的数目也被计算在内.因此,在专用服务器环境中,这是一种限制并发连接数的方法.   
    疑点一:能够连接到SGA的操作系统进程数,这种进程包括哪些进程? Windows系统中的线程数,是指所有与oracle相关的进程的线程数之和?   
    疑点二:在共享服务器和专用服务器环境中,算法有什么不同?   
    哪位兄弟了解比较透彻,请指点一下,拜谢!   
    Sessions:是被应用于oracle层次而非操作系统层次.在不考虑通过专用服务器或共享服务器进行登录的情况下,这个参数限制了对指定实例的并发登陆数.   
    疑问:在C/架构中,是指Oracle用户登陆建立的会话数?在B/S架构中又怎么算呢?   
    2,尽管概念不是很明白,遇到这种问题还得干活先:   
    1).通过SQLPlus修改  
    Oracle的sessions和processes的关系是  sessions=1.1*processes + 5  

     

     


     
    使用sys,以sysdba权限登录:  SQL> show parameter processes;  NAME TYPE VALUE  
    ------------------------------------ ----------- ---------------------------------------  aq_tm_processes integer 1  db_writer_processes integer 1  job_queue_processes integer 10  log_archive_max_processes integer 1  processes integer 150  
    SQL> alter system set processes=400 scope = spfile;  系统已更改。  
    SQL> show parameter processes;  NAME TYPE VALUE  
    ------------------------------------ ----------- -----------------------------------------  aq_tm_processes integer 1  db_writer_processes integer 1  job_queue_processes integer 10  log_archive_max_processes integer 1  processes integer 150  SQL> create pfile from spfile;  文件已创建。    
    重启数据库,OK!   
    SQL> shutdown immediate;  数据库已经关闭。  已经卸载数据库。  ORACLE 例程已经关闭。  SQL> startup  
    ORACLE 例程已经启动。   
    Total System Global Area  171966464 bytes  Fixed Size                   787988 bytes  Variable Size             145488364 bytes  Database Buffers           25165824 bytes  Redo Buffers                 524288 bytes  数据库装载完毕。  数据库已经打开。  
    SQL> show parameter processes;   

     

     


    NAME                                 TYPE        VALUE  ------------------------------------ ----------- ----------------  aq_tm_processes                      integer     0  db_writer_processes                  integer     1  gcs_server_processes                 integer     0  job_queue_processes                  integer     10  log_archive_max_processes            integer     2  processes                            integer     400  SQL> show parameter session;   
    NAME                                 TYPE        VALUE  ------------------------------------ ----------- ----------------  java_max_sessionspace_size           integer     0  java_soft_sessionspace_limit         integer     0  license_max_sessions                 integer     0  license_sessions_warning             integer     0  logmnr_max_persistent_sessions       integer     1  session_cached_cursors               integer     0  session_max_open_files               integer     10  sessions                             integer     445  shared_server_sessions               integer  SQL>    
    【注:sessions是个派生值,由processes的值决定,公式sessions=1.1*process + 5】 

    哎...今天够累的,签到来了1...
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|小黑屋|Java自学者论坛 ( 声明:本站文章及资料整理自互联网,用于Java自学者交流学习使用,对资料版权不负任何法律责任,若有侵权请及时联系客服屏蔽删除 )

    GMT+8, 2024-12-22 02:24 , Processed in 0.053816 second(s), 27 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表