1、查询锁情况

  1. select sid,serial#,event,BLOCKING_SESSION from v$session where event like '%TX%';

2、根据SID查询具体信息(可忽略)

  1. select sid,serial#,username,machine,blocking_session from v$session where sid=<SID>;

3、杀掉会话

#根据1和2中查到的SID和SERIAL# 定位会话,并杀掉

  1. ALTER SYSTEM DISCONNECT SESSION '<SID>,<SERIAL>' IMMEDIATE;

  1. ALTER SYSTEM KILL SESSION '<SID>,<SERIAL>';

  1. select p.SPID,p.USERNAME,s.SERIAL#,p.PROGRAM
  2. from v$process p,v$session s
  3. where p.ADDR=s.PADDR
  4. AND s.sid='<SID>';
  1. kill -9 <PID>;

附件:

#查询阻塞脚本

  1. col waiting_session for a20
  2. col lock_type for a15
  3. col mode_requested for a10
  4. col mode_held for a10
  5. col lock_id1 for a10
  6. col lock_id2 for a10
  7. set linesize 120
  8. set pagesize 999
  9. with dba_locks_cust as
  10. (SELECT inst_id||'_'||sid session_id,
  11. DECODE (TYPE,
  12. 'MR', 'Media Recovery',
  13. 'RT', 'Redo Thread',
  14. 'UN', 'User Name',
  15. 'TX', 'Transaction',
  16. 'TM', 'DML',
  17. 'UL', 'PL/SQL User Lock',
  18. 'DX', 'Distributed Xaction',
  19. 'CF', 'Control File',
  20. 'IS', 'Instance State',
  21. 'FS', 'File Set',
  22. 'IR', 'Instance Recovery',
  23. 'ST', 'Disk Space Transaction',
  24. 'TS', 'Temp Segment',
  25. 'IV', 'Library Cache Invalidation',
  26. 'LS', 'Log Start or Switch',
  27. 'RW', 'Row Wait',
  28. 'SQ', 'Sequence Number',
  29. 'TE', 'Extend Table',
  30. 'TT', 'Temp Table',
  31. TYPE)
  32. lock_type,
  33. DECODE (lmode,
  34. 0, 'None', /* Mon Lock equivalent */
  35. 1, 'Null', /* N */
  36. 2, 'Row-S (SS)', /* L */
  37. 3, 'Row-X (SX)', /* R */
  38. 4, 'Share', /* S */
  39. 5, 'S/Row-X (SSX)', /* C */
  40. 6, 'Exclusive', /* X */
  41. TO_CHAR (lmode))
  42. mode_held,
  43. DECODE (request,
  44. 0, 'None', /* Mon Lock equivalent */
  45. 1, 'Null', /* N */
  46. 2, 'Row-S (SS)', /* L */
  47. 3, 'Row-X (SX)', /* R */
  48. 4, 'Share', /* S */
  49. 5, 'S/Row-X (SSX)', /* C */
  50. 6, 'Exclusive', /* X */
  51. TO_CHAR (request))
  52. mode_requested,
  53. TO_CHAR (id1) lock_id1,
  54. TO_CHAR (id2) lock_id2,
  55. ctime last_convert,
  56. DECODE (block,
  57. 0, 'Not Blocking', /* Not blocking any other processes */
  58. 1, 'Blocking', /* This lock blocks other processes */
  59. 2, 'Global', /* This lock is global, so we can't tell */
  60. TO_CHAR (block))
  61. blocking_others
  62. FROM gv$lock
  63. ),
  64. lock_temp as
  65. (select * from dba_locks_cust),
  66. lock_holder as
  67. (
  68. select w.session_id waiting_session,
  69. h.session_id holding_session,
  70. w.lock_type,
  71. h.mode_held,
  72. w.mode_requested,
  73. w.lock_id1,
  74. w.lock_id2
  75. from lock_temp w, lock_temp h
  76. where h.blocking_others in ('Blocking','Global')
  77. and h.mode_held != 'None'
  78. and h.mode_held != 'Null'
  79. and w.mode_requested != 'None'
  80. and w.lock_type = h.lock_type
  81. and w.lock_id1 = h.lock_id1
  82. and w.lock_id2 = h.lock_id2
  83. ),
  84. lock_holders as
  85. (select waiting_session,holding_session,lock_type,mode_held,
  86. mode_requested,lock_id1,lock_id2
  87. from lock_holder
  88. union all
  89. select holding_session, null, 'None', null, null, null, null
  90. from lock_holder
  91. minus
  92. select waiting_session, null, 'None', null, null, null, null
  93. from lock_holder
  94. )
  95. select lpad(' ',3*(level-1)) || waiting_session waiting_session,
  96. lock_type,
  97. mode_requested,
  98. mode_held,
  99. lock_id1,
  100. lock_id2
  101. from lock_holders
  102. connect by prior waiting_session = holding_session
  103. start with holding_session is null;

查询阻塞脚本

Oracle锁处理、解锁方法的更多相关文章

  1. oracle锁表问题解决方法

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcytp52 Oracle数据库操作中,我们有时会用到锁表查询以及解锁和kill进程 ...

  2. oracle 锁表/解锁 杀进程

    一些ORACLE中的进程被杀掉后,状态被置为"killed",但是锁定的资源很长时间不释放,有时实在没办法,只好重启数据库.现在提供一种方法解决这种问题,那就是在ORACLE中杀不 ...

  3. oracle锁表+解锁

    一.锁表: LOCK TABLE tablename IN EXCLUSIVE MODE; 二.解锁 * 1.首先用dba账户登录数据库 * * 2.查出被锁定的对象 * select * from ...

  4. oracle锁表解决方法

    SQL> select session_id from v$locked_object; SESSION_ID----------142 SQL> SELECT sid, serial#, ...

  5. ORACLE锁表解锁

    SELECT object_name, machine, s.sid, s.serial# FROM gv$locked_object l, dba_objects o, gv$session s W ...

  6. Oracle锁表查询和解锁方法

    数据库操作语句的分类 DDL:数据库模式定义语言,关键字:create DML:数据操纵语言,关键字:Insert.delete.update DCL:数据库控制语言 ,关键字:grant.remov ...

  7. oracle 用户被锁定解锁方法

    修改了用户密码,第二天过来发现用户被锁定,晚上走的时候还好好的 . alter profile DEFAULT limit FAILED_LOGIN_ATTEMPTS UNLIMITED; alter ...

  8. oracle查询锁表解锁语句

    --oracle查询锁表解锁语句--首先要用dba权限的用户登录,建议用system,然后直接看sql吧 --1. 如下语句 查询锁定的表: SELECT l.session_id sid, s.se ...

  9. oracle的 表、 procedure、package等对象被锁,处理方法

    1.0  oracle中表被锁,处理方法 select t4.object_name, t3.spid, t1.oracle_username, t1.os_user_name  from v$pro ...

  10. Oracle锁表与解锁 对象锁与解锁

    阅读目录 锁表与解锁 查看锁表进程SQL语句 解锁 对象锁与解锁 回到顶部 锁表与解锁 查看锁表进程SQL语句 select * from v$session t1, v$locked_object ...

随机推荐

  1. C#可遍历的集合

    public class Product { /// <summary> /// 自增ID /// </summary> public int ID { get; set; } ...

  2. IDEA 的缓存问题

    当IDEA还是使用以前的配置时,大概率是缓存问题,查看target,里面的内容就是编译好的东西,问题都是出自这里.

  3. Mac系统操作指南

    OSX 采用的Unix文件系统,所有文件都挂在跟目录“ /” 下面,所以不在要有Windows 下的盘符概念.比如什么“C:”你在桌面上看到的硬盘都挂在 /Volumes 下. 比如接上个叫做“XX” ...

  4. c# 设计模式 之:工厂模式之---工厂模式

    1.uml类图: 实现和依赖关系: 实现: SportFactory.JeepFactory.HatchbackFactory 实现 IFactory 接口 SportCar.JeepCar.Hatc ...

  5. 书籍管理系统 -----没有form组件

    urls: from django.contrib import admin from django.urls import path,re_path from first import views ...

  6. Effective C++(10) 重载赋值操作符时,返回该对象的引用(retrun *this)

    问题聚焦: 这个准则比较简短,但是往往就是这种细节的地方,可以提高你的代码质量. 细节决定成败,让我们一起学习这条重载赋值操作符时需要遵守的准则吧. 还是以一个例子开始: Demo // 连锁赋值 x ...

  7. Python学习---Django误删除sql表后,如何创建数据

    误删除sql表后,怎么创建数据? 仅仅适合单表,多表因为涉及约束, python mangage.py makemigrations  --> 生成migrations目录和根数据库对应的sql ...

  8. 企业级Apache详解

    安装Apache #Apache安装 rpm -qa|grep httpd yum install httpd #2编译安装: -->推荐安装 cd /root/software yum -y ...

  9. 通过Windows Server 2008 R2建立iSCSI存储

    名词解释:iSCSI技术是一种由IBM公司研究开发的,是一个供硬件设备使用的可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行 SCSI协议,使其能够在诸如高速千兆以太网上 ...

  10. How to Remove A Service Entry From Win10 Service List

    Warning Please do this operation CAREFULLY, otherwise you may get something wrong with your system. ...