故障现象:数据库迁移到新环境刚过两天。今天生产核心数,断断继续的告警连接不上。这是问题!

如理思路:1.查看alert日志,日志无报错
                 2.查看连接数,参数设置的2000,历史最高连接1706, 当前连接1698   ,初步一看,排除了连接数不够的问题。

                 3.查看监听日志,第一次查询,由于断断续续断不上,并没有仔细看查。并未发现问题。 在第二次查看时,发现监听日志中有出现 TNS-12520 错误 ,并有 service_update * servicename * 0 信息

查询资料:
1. 网上查询是ORA-12520  ,大多数是说tnsname.ora 中(server=shared) 改成(server=dedicated)  由于程度未并改配置,又是断断续续,加上网上是ORA-12520(alert中并未有这个错误 ),可以排除这个问题。为了稳妥起见,我通过监听日志,找到连接失败的IP,登录到业务服务器确认, tnsname.ora 的配置就是dedicated

2.process不够引起的,可以排除这个问题,当前参数限制是2000,而我历史最高连接也就1706个。

3.通守MOS 查询TNS-12520 .找到文档 ID 2321889.1  其现象和现场一致。
  文档中参数是设的3000,历史最高连接3000,当前连接2723 
  其主要内容是说,pmon将定期注册到侦听器,并将DB当前进程号发送给侦听器。当前连接数已是2723 个连接,在没有释放连接数的情况下,侦听器将只允许300个新连接(3000 - 2700),直到下一次pmon注册发生。
  
 在大多数情况下,这可能就足够了,因为PMON或LREG将在短时间内注册到监听器,而现在应用程序很可能使用连接池。
 但是,如果发生登录风暴或连接数量的显着峰值,则可能发生TNS-12520错误,然后在实例更新侦听器进程所花费的时间内清除。
 这是错误转瞬即自纠的情况(即出现后马上恢复)。
例:08-OCT-2017 19:55:01 * service_update * servicename * 0

解决办法:
核实 数据库有较多短连接,跟业务说清楚,1.把短连接改为长连接  2.降低总体连接数  3.增大数据库连接数processes参数




APPLIES TO:Oracle Net Services - Version 11.2.0.4 to 12.2.0.1 [Release 11.2 to 12.2]

Information in this document applies to any platform.

        

SYMPTOMS

DB init parameter processes is set to 3000, TNS-12520 is seen in listener.log intermittently even v$resource_limit only shows a max value 2723 for process MAX_UTILIZATION:

RESOURCE_NAME CURRENT_UTILIZATION MAX_UTILIZATION INITIAL_ALLOCATION LIMIT_VALUE CON_ID
processes 1025 2723 3000 3000 0
sessions 935 2199 4536 4536 0

CAUSE

This is an expected behavior when login storm occurred with below justification:

pmon will register to listener periodically, and it sends the DB current process number to the listener. In this case, max allowed processes is 3000, and current processes is 2700, so that the listener will only allow 300 new connections (3000 - 2700) until another pmon registration happened.

It could be sufficient in most cases, since the PMON or LREG will register to the listener in a short time, and nowadays applications are most likely using connection pool.

But if a login storm or significant spike in the number of connections occurs, the TNS-12520 error can occur then clear in the time it takes for the instance to update the listener process.

This is a case where the error is fleeting then self corrects.

eg: Below is example of service registration

08-OCT-2017 19:55:01 * service_update * servicename * 0

SOLUTION

Identify the client or application server where these connections originate and tune that client so that the number of connections can be managed by your database.

ORACLE 12.2 RAC TNS-12520 遭遇连接风爆 (connection storm)的更多相关文章

  1. pl/sql 远程连接oracle数据库问题(TNS:丢失连接)

    前几天还可以连接的,突然就连接失效,别的电脑也连接不上 1.ping 远程数据库的IP,可以ping通. 2.检查服务端的tnsnames.ora文件和本机客户端比较,没问题. 3.查看监听是否启动  ...

  2. 记一次 oracle 12.2 RAC : Transaction recovery: lock conflict caught and ignored

    节点一 alert日志: PDB(17):Transaction recovery: lock conflict caught and ignored PDB(17):Transaction reco ...

  3. 【转】Oracle RAC 环境下的连接管理

    文章转自:http://www.oracle.com/technetwork/cn/articles/database-performance/oracle-rac-connection-mgmt-1 ...

  4. Oracle RAC 环境下的连接管理(转) --- 防止原文连接失效

    崔华老师的文章!!! 这篇文章详细介绍了Oracle RAC环境下的连接管理,分别介绍了什么是 Connect Time Load Balancing.Runtime Connection Load ...

  5. Toad DBA Suite for Oracle 12.6 64-bit Commercial 简单连接

    注意:Toad DBA Suite for Oracle 12.6 64-bit Commercial安装包推荐去官网下载,中文版的最好不要使用绿色免安装版,不然连接会报各种错误 1.安装:双击下载好 ...

  6. [转]Oracle 11g R2 RAC高可用连接特性 – SCAN详解

    原文地址:http://czmmiao.iteye.com/blog/2124373   昨天帮朋友解决11g RAC SCAN问题,当时为这朋友简单解答了一些SCAN特性相关的问题,但我知道这仅仅是 ...

  7. 安装完oracle重新启动后报ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务(重启前正常)

    安装完oracle重新启动后报ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务(重启前正常) 刚安装完后用plSql登录正常. 在dos命令行下 输入  sqlplus 用户 ...

  8. C#连接oracle数据库提示ORA-12154: TNS: 无法解析指定的连接标识符

    C#连接oracle数据库提示ORA-12154: TNS: 无法解析指定的连接标识符如果PLSQL Develope能连接上而用代码无法连接上则可以考虑sqlnet.ora文件中是否有NAMES.D ...

  9. Upgrade Oracle Database 12c Release 2(12.2) RAC on RHEL7.3 with RU

    Upgrade Oracle Database 12c Release 2(12.2) RAC on RHEL7.3 -- [ RU: 26610291 (GRID INFRASTRUCTURE RE ...

随机推荐

  1. Win32编程中如何处理控制台消息

    这篇文章讨论如何处理所有的控制台消息. 第一步,首先要安装一个事件钩子,也就是说要建立一个回调函数.调用Win32 API,原型如下: BOOL SetConsoleCtrlHandler(PHAND ...

  2. 21、conda下载,安装,卸载

    参考:https://www.cnblogs.com/Datapotumas/p/6293309.html 1.下载 conda下载网址:https://conda.io/miniconda.html ...

  3. TinkerPop中的遍历:图的遍历步骤(2/3)

    24 Group Step 有时,所运行的实际路径或当前运行位置不是计算的最终输出,而是遍历的一些其他表示.group()步骤(map / sideEffect)是根据对象的某些功能组织对象的一个方法 ...

  4. Jquery Accordion 折叠面板

    属性 类型 默认值 active Boolean/Number/jQuery/Selector/Element 第一个面板 设定默认显示的面板.设置为 false 时默认不显示面板,需 collaps ...

  5. 42、生鲜电商平台-商品的spu和sku数据结构设计与架构

    说明:Java开源生鲜电商平台中商品的spu和sku数据结构设计与架构,包括数据库图标与架构分析. 1. 先说明几个概念. 电商网站采用在商品模块,常采用spu+sku的数据结构算法,这种算法可以将商 ...

  6. [raspberry pi3] zram设置

    linux 3.15之后添加了个和mac一样的功能,内存压缩zram, 之前还有个zswap, zram通常是以模块的方式被放在系统里面的,以便在可以根据需求的不同,定制化加载. raspberry ...

  7. android studio中配置X5 webview时的一个坑

    在接入X5的第二步中,需要配置so文件,这里说一下遇到的坑 1. 需要把demo下载回来,不然你找不到so文件,找到so文件后放到自己相对应的目录下边,自己里面那个目录也没有,所以和文件夹一起复制过去 ...

  8. docker网络模式----入门docker的难点

    众所周知,现在docker是轻量级虚拟化的典型代表!这段时间想要建立一个分布式系统,但是手头上主机没那么多,所以使用docker进行虚拟化,但是在使用的过程中对网络这一部分是一直不太理解,特别找了一篇 ...

  9. wampserver2.5 在 Win7 64位下的相关配置备忘

    发现运行和配置这个版本和之前的Wampserver有些差异,特此记录 1).wampserver2.5-Apache-2.4.9-Mysql-5.6.17-php5.5.12-64b,另外有可能需要安 ...

  10. Hexo下Next主题配置与优化

    使用Next主题 在这里Downloads Next主题代码 将下载的代码放在myBlog/theme/next目录下 设置站点myBlog/_config.yml的theme字段值为next 生成新 ...