zoukankan      html  css  js  c++  java
  • ORACLE查找并解除死锁进程

      ORACLE查找并解除死锁进程

    1、查找死锁进程

    select /*+RULE*/v$lock.sid,
    decode(v$lock.type,
            'MR', 'Media Recovery',
            'RT','Redo Thread',
            'UN','User Name',
            'TX', 'Transaction',
            'TM', 'DML',
            'UL', 'PL/SQL User Lock',
            'DX', 'Distributed Xaction',
            'CF', 'Control File',
            'IS', 'Instance State',
            'FS', 'File Set',
            'IR', 'Instance Recovery',
            'ST', 'Disk Space Transaction',
            'TS', 'Temp Segment',
            'IV', 'Library Cache Invalida-tion',
            'LS', 'Log Start or Switch',
            'RW', 'Row Wait',
            'SQ', 'Sequence Number',
            'TE', 'Extend Table',
            'TT', 'Temp Table',
            'Unknown') LockType,
    rtrim(object_type) || ' ' || rtrim(owner) || '.' || object_name object_name,
    decode(lmode,   0, 'None',
                    1, 'Null',
                    2, 'Row-S',
                    3, 'Row-X',
                    4, 'Share',
                    5, 'S/Row-X',
                    6, 'Exclusive',        'Unknown') LockMode,
    decode(request, 0, 'None',
                    1, 'Null',
                    2, 'Row-S',
                    3, 'Row-X',
                    4, 'Share',
                    5, 'S/Row-X',
                    6, 'Exclusive', 'Unknown') RequestMode,
    ctime, block b
    from v$lock, all_objects
    where sid > 8
    and v$lock.id1 = all_objects.object_id

    如果查询结果有记录表明有锁

    2、这个SQL可用来生成杀死死锁进程的SQL

    select /*+RULE*/
     'alter system kill session ''' || a.sid || ',' || b.serial# || ''';'
     from v$lock a, all_objects c, v$session b
     where a.sid > 8
       and a.id1 = c.object_id
       and a.sid = b.sid;

    select /*+RULE*/
     'alter system kill session ''' || a.sid || ',' || b.serial# || ''';'
     from v$lock a, v$session b
     where a.sid > 8
       and a.sid = b.sid;

    3、把第二步的查询结果导出为脚本,在SQLPLUS中执行该脚本即可解除死锁。

  • 相关阅读:
    TIOBE 2011年5月编程语言排行榜:C#和ObjectiveC上升趋势不减 狼人:
    20款绝佳的HTML5应用程序示例 狼人:
    为什么开发人员不能估算时间? 狼人:
    4款基于Django框架的开源软件推荐 狼人:
    jQuery 1.6正式版发布 狼人:
    设计者更喜欢什么操作系统 狼人:
    网络结点流网络浅析 By ACReaper
    效果实现SWFUpload在JQueryUI的Dialog中无法实现上传功能
    响应中断向量美妙的微机原理2013/5/2(2)
    内存图片IOS app启动动画的实现
  • 原文地址:https://www.cnblogs.com/jimeper/p/733221.html
Copyright © 2011-2022 走看看