Oracle单实例情况下的library cache pin的问题模拟与问题分析

參考自:

WAITEVENT: "library cache pin" Reference Note (文档 ID 34579.1)

How to Find the Blocker of the 'library cache pin' in a RAC environment? (文档 ID 780514.1)

本机环境:Oracle 10.2.0.5 x86-64bit for RHEL5.8 x86-64bit

第一个session:

[oracle@localhost ~]$ sqlplus / as sysdba

SQL*Plus: Release 10.2.0.5.0 - Production on Fri Jun 12 17:27:28 2015

Copyright (c) 1982, 2010, Oracle.  All Rights Reserved.

Connected to an idle instance.

SQL> startup

ORACLE instance started.

Total System Global Area  281018368 bytes
Fixed Size 2095672 bytes
Variable Size 96470472 bytes
Database Buffers 176160768 bytes
Redo Buffers 6291456 bytes
Database mounted.
Database opened. SQL> create user lc0019999 identified by aaaaaa; User created. SQL> grant dba to lc0019999; Grant succeeded. SQL> create user lc0029999 identified by aaaaaa; User created. SQL> grant dba to lc0029999; Grant succeeded. SQL> create user lc0039999 identified by aaaaaa; User created. SQL> grant dba to lc0039999; Grant succeeded. SQL> conn lc0019999/aaaaaa
Connected.
SQL> show user
USER is "LC0019999" SQL> select * from v$mystat where rownum<2; SID STATISTIC# VALUE
---------- ---------- ----------
159 0 1 SQL> Create or replace procedure dummy is
2 begin
3 null;
4 end;
5 / Procedure created. SQL> Begin
2 Dummy;
3 Dbms_lock.sleep(1000);
4 End;
5 /
------------>一直sleep着

以lc0029999登陆新开的一个session

[oracle@localhost ~]$ sqlplus lc0029999/aaaaaa

SQL*Plus: Release 10.2.0.5.0 - Production on Fri Jun 12 17:34:04 2015

Copyright (c) 1982, 2010, Oracle.  All Rights Reserved.

Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> select * from v$mystat where rownum<2; SID STATISTIC# VALUE
---------- ---------- ----------
158 0 1 SQL>
SQL> alter procedure lc0019999.dummy compile; ------------>一直hang着

以sys用户新开一个session

[oracle@localhost ~]$ sqlplus / as sysdba

SQL*Plus: Release 10.2.0.5.0 - Production on Fri Jun 12 17:31:33 2015

Copyright (c) 1982, 2010, Oracle.  All Rights Reserved.

Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> set line 200
SQL> select sid, serial#,event from v$session where event like '%library cache pin%'; SID SERIAL# EVENT
---------- ---------- ----------------------------------------------------------------
158 28 library cache pin SQL> select sid, serial#,p1raw,event from v$session where event like '%library cache pin%'; SID SERIAL# P1RAW EVENT
---------- ---------- ---------------- --------------------------------------------------
158 28 000000006BFF19B0 library cache pin SQL> col owner for a30
SQL> col object for a30
SQL> SELECT kglnaown "Owner", kglnaobj "Object"
2 FROM x$kglob
3 WHERE kglhdadr='000000006BFF19B0'---->上面查出的P1RAW值。 4 ; ---->该语句是查询出这个等待事件发生在哪个object上。 Owner Object
------------------------------ ------------------------------
LC0019999 DUMMY SQL>
SQL> SELECT s.sid, kglpnmod "Mode", kglpnreq "Req"
2 FROM x$kglpn p, v$session s
3 WHERE p.kglpnuse=s.saddr
4 AND kglpnhdl='000000006BFF19B0';---->该语句是查询出这个等待事件的等待者sid(REQ>0)和持有者sid(Mode>0) SID Mode Req
---------- ---------- ----------
158 0 3
159 2 0 SQL>
---补充:例如以下文字来源于:
<blockquote><strong><code>Mode</code></strong><span> </span>is the mode in which the pin is wanted. This is a number thus:<ul><li>2 - Share mode</li><li>3 - Exclusive mode</li></ul></blockquote>
 
例如以下摘自:WAITEVENT: "library cache pin" Reference Note (文档 ID 34579.1)
An X request (3) will be blocked by any pins held S mode (2) on the object.
An S request (2) will be blocked by any X mode (3) pin held, or may queue behind some other X request.

Oracle单实例情况下的library cache pin的问题模拟与问题分析的更多相关文章

  1. Oracle内存详解之二 Library cache 库缓冲-转载

    Library cache是Shared pool的一部分,它几乎是Oracle内存结构中最复杂的一部分,主要存放shared curosr(SQL)和PLSQL对象(function,procedu ...

  2. oracle 单实例DG(搭建篇一)

    一,介绍 lodding... 二,安装前环境配置 01,依赖包的安装: yum install binutils-* yum install compat-libstdc++-* yum insta ...

  3. Oracle 单实例数据库安装和real application clusters数据库安装的区别

    在想了解Oracle单实例数据可和RAC数据库前,请确保你已经知道了数据库和实例的关系,如果不了解,请参考Oracle 数据库实例和数据库. 单实例数据库模式 单实例模式下,一个数据库只能通过一个实例 ...

  4. Oracle Study之--Oracle 单实例11.2.0.1.0升级到11.2.0.3.0

    Oracle Study之--Oracle 单实例11.2.0.1.0升级到11.2.0.3.0 系统环境: 操作系统:RedHat EL6(64位) Oracle:    Oracle 11gR2 ...

  5. 如何使用event 10049分析定位library cache lock and library cache pin

    Oracle Library Cache 的 lock 与 pin 说明 一. 相关的基本概念 之前整理了一篇blog,讲了Library Cache 的机制,参考: Oracle Library c ...

  6. 深入理解shared pool共享池之library cache的library cache pin系列三

    关于library cache相关的LATCH非常多,名称差不多,我相信一些人对这些概念还是有些晕,我之前也有些晕,希望此文可以对这些概念有个更为清晰的理解,本文主要学习library cache p ...

  7. 外键约束列并没有导致大量建筑指数library cache pin/library cache lock

    外键约束列并没有导致大量建筑指数library cache pin/library cache lock 清除一个100大数据表超过一百万线,发现已经运行了几个小时: delete B001.T_B1 ...

  8. 怎么发现RAC环境中&#39;library cache pin&#39;等待事件的堵塞者(Blocker)?

    怎么发现RAC环境中的'library cache pin'等待事件的堵塞者(Blocker) 參考自 How to Find the Blocker of the 'library cache pi ...

  9. 一次library cache pin故障的解决过程

    内容如下: 今天接到同事的电话,说他的一个存储过程已经run了一个多小时了,还在继续run,他觉得极不正常,按道理说不应该run这么长时间. 我说那我去看一下吧. 这个库是一个AIX上的10.2.0. ...

随机推荐

  1. [luogu] P3294 [SCOI2016]背单词 (贪心)

    题目描述 Lweb 面对如山的英语单词,陷入了深深的沉思,"我怎么样才能快点学完,然后去玩三国杀呢?".这时候睿智的凤老师从远处飘来,他送给了 Lweb 一本计划册和一大缸泡椒,他 ...

  2. 【codeforces 810B】Summer sell-off

    [题目链接]:http://codeforces.com/contest/810/problem/B [题意] 每天有ki件物品,你知道每天能卖掉li件; 然后让你选f天; 这f天,可以将ki乘上2; ...

  3. CodeForces 362E Petya and Pipes

    Petya and Pipes Time Limit: 1000ms Memory Limit: 262144KB This problem will be judged on CodeForces. ...

  4. 超级简单JS网页倒计时代码

    <script type="text/javascript"> // JavaScript Document function ShowTimes(){ var Aft ...

  5. [SCSS] Pure CSS for multiline truncation with ellipsis

    1. Pure CSS 2. Responsive 3. No need to recalculate on resize or font’s load event 4. Cross browser

  6. poj3249 Test for job 【图的DAG dp】

    #include <cstdio> #include <cstdlib> #include <iostream> #include <algorithm> ...

  7. 改动android 系统时间

    命令如 date -s "yyyymmdd.[[[hh]mm]ss]" 直接在CRT上执行,举例:date -s "20120801.120503" 但在adb ...

  8. 110个经常使用Oracle函数总结

    1. ASCII 返回与指定的字符相应的十进制数; SQL> select ascii(A) A,ascii(a) a,ascii(0) zero,ascii( ) space from dua ...

  9. Elasticsearch之中文分词器插件es-ik的自定义热更新词库

    不多说,直接上干货! 欢迎大家,关注微信扫码并加入我的4个微信公众号:   大数据躺过的坑      Java从入门到架构师      人工智能躺过的坑         Java全栈大联盟       ...

  10. java web项目中资源国际化

    有一些网站会有语言栏选项: 选择英文,内容就显示为英文: 选择中文,内容就显示文中文. 这里就用到了国际化资源. 先看效果图: 步骤: 1.建立资源包: mess_en_US.properties ( ...