ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 生产环境library cache lock/pin解决方案

生产环境library cache lock/pin解决方案

原创 Linux操作系统 作者:www_xylove 时间:2013-09-09 15:51:23 0 删除 编辑

生产环境library cache lock/pin解决方案

   

     今天上午巡检数据库的时候发现数据库出现近55sessionlibrary cache locklibrary cache bin上等待。经过分析,发现有8session在对数据库对象进行编译或重编译,从97(从周末开始)就开始对数据库对象进行编译或重编译,导致相关的依赖对象的数据库操作被阻塞,相关依赖对象的数据库操作具体有select ,dml等操作,均被阻塞进程,以至于出现上述等待事件,被阻塞的session47个。

     下面的这个过程是解决的具体操作:

 

55session在等待library cache locklibrary cache bin

SQL> SELECTdistinct s.sid, kglpnmod"Mode", kglpnreq "Req", SPID "OS Process"

  FROM v$session_wait w, x$kglpn p, v$session s, v$process o

  WHERE p.kglpnuse = s.saddr

  AND p.kglpnhdl = w.p1raw

  and w.event like '%library cache%'

  and s.paddr = o.addr;  2    3    4    5    6 

 

       SID       Mode        Req OS Process

---------- ---------- ---------- ------------

       834          3          0 103856

       225          0          2 198538

       894          0          2 132230

       739          3          0 257234

        98          0          2 219290

        88          0          2 270956

       483          0          2 248826

       236          0          2 80360

       728          0          2 57178

       789          0          2 83764

       889          3          0 83658

       142          0          2 32746

       789          0          2 83764

       709          0          2 133414

       770          0          2 119300

       497          0          2 174704

        76          0          2 100064

       688          0          2 193496

       199          0          2 270842

       130          0          2 222368

       421          0          2 256196

       402          0          2 199614

       110          3          0 155564

       356          0          2 245854

 

       758          3          0 203856

       722          0          2 124620

       457          0          2 221432

       709          0          2 133414

       449          0          2 168288

       117          0          2 217924

       550          3          0 192620

       590          0          2 150370

       582          3          0 83046

       429          0          2 64810

       910          0          2 168536

       29          0          2 277628

       321          0          2 196554

       497          0          2 174704

       709          0          2 133414

       142          0          2 32746

       789          0          2 83764

       889          3          0 83658

       236          0          2 80360

       728          0          2 57178

       98           0          2 219290

       268          0          2 118170

       894          0          2 132230

       505          3          0 170336

       616          0          2 223686

      

上面的sql就在shared pool共享池检索出哪些session占用了被依赖资源的句柄,需要做的就是kill掉这些持有对象句柄的进程。

  下面这个sql就至找出持有锁的进程:

SQL> SELECT distinct s.sid, kglpnmod"Mode", kglpnreq "Req", SPID "OS Process"

  FROM v$session_wait w, x$kglpn p, v$session s, v$process o

  WHERE p.kglpnuse = s.saddr

  AND p.kglpnhdl = w.p1raw

  and w.event like '%library cache%'

  and s.paddr = o.addr

  and kglpnmod =3;

 

  2    3    4    5    6    7 

       SID       Mode        Req OS Process

---------- ---------- ---------- ------------

       834          3          0 103856

       505          3          0 170336

       739          3          0 257234

       889          3          0 83658

       758          3          0 203856

       110          3          0 155564

       550          3          0 192620

       582          3          0 83046

 

就是上面的8个进程占用了句柄,1038561703362572348365820385615556419262083046

 

kill 掉这些进程:

oracle@DBHIS02>kill -9 103856

oracle@ DBHIS02>kill -9 170336

oracle@ DBHIS02>kill -9 257234

oracle@ DBHIS02>kill -9 83658

oracle@ DBHIS02>kill -9 203856

oracle@ DBHIS02>kill -9 155564

oracle@ DBHIS02>kill -9 192620

oracle@ DBHIS02>kill -9 83046

 

kill掉之后,阻塞的8session释放了锁资源,被阻塞的47session获得了资源,进行正常的资源请求。

至此,问题解决。

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/21266384/viewspace-772409/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2010-11-12

  • 博文量
    99
  • 访问量
    220761