当前位置: 首页 > 编程笔记 >

Oracle中查看引起Session阻塞的2个脚本分享

齐财
2023-03-14
本文向大家介绍Oracle中查看引起Session阻塞的2个脚本分享,包括了Oracle中查看引起Session阻塞的2个脚本分享的使用技巧和注意事项,需要的朋友参考一下

用户A执行删除,但是没有提交。


SQL> delete from test where object_id<10;

已删除8行。

用户B执行删除或者更新id<10的记录,则被阻塞。


SQL> update test set flag='N' where object_id<10;

遇到这种阻塞,首先需要确定问题。可以使用以下脚本。


select t2.username,t2.sid,t2.serial#,t2.logon_time 

from v$locked_object t1,v$session t2

where t1.session_id=t2.sid order by t2.logon_time;

结果如下:


USERNAME                              SID    SERIAL# LOGON_TIME

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

LIHUILIN                               14         87 09-11月-13

LIHUILIN                              139        655 09-11月-13


或者使用


select 

(select username from v$session where sid=a.sid) blocker,

a.sid,' is blocking ',

(select username from v$session where sid=b.sid) blockee,

b.sid

from v$lock a,v$lock b

where a.block=1 and b.request>0 and a.id1=b.id1 and a.id2=b.id2;

结果如下:


BLOCKER                               SID 'ISBLOCKING'  BLOCKEE                               SID

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

LIHUILIN                               14  is blocking  LIHUILIN                              139

Kill引起阻塞的Session


select 'alter system kill session '''||sid||','||serial#||''';' cmd from v$session where username='LIHUILIN' and sid=14;

结果如下:


CMD

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

alter system kill session '14,87';

最后执行alter system命令,阻塞解除。

 类似资料:
  • 本文向大家介绍Oracle中查看正在运行的SQL进程脚本分享,包括了Oracle中查看正在运行的SQL进程脚本分享的使用技巧和注意事项,需要的朋友参考一下 Oracle的show processlist Oracle show full processlist

  • 本文向大家介绍Jquery ajax 同步阻塞引起的UI线程阻塞问题,包括了Jquery ajax 同步阻塞引起的UI线程阻塞问题的使用技巧和注意事项,需要的朋友参考一下 最近做一个项目,遇到了一个问题同步ajax引起的ui线程阻塞问题,下面把我的问题解决过程分享给大家。 事情起因是这样的,因为页面上有多个相似的异步请求动作,本着提高代码可重用性的原则,我封装了一个名为getData的函数,它接收

  • 本文向大家介绍Oracle重建索引Shell脚本、SQL脚本分享,包括了Oracle重建索引Shell脚本、SQL脚本分享的使用技巧和注意事项,需要的朋友参考一下 索引是提高数据库查询性能的有力武器。没有索引,就好比图书馆没有图书标签一样,找一本书自己想要的书比登天还难。然而索引在使用的过程中,尤其是在批量的DML的情形下会产生相应的碎片,以及B树高度会发生相应变化,因此可以对这些变化较大的索引进

  • 本文向大家介绍Oracle 监控索引使用率脚本分享,包括了Oracle 监控索引使用率脚本分享的使用技巧和注意事项,需要的朋友参考一下 Oracle提供了索引监控特性来判断索引是否被使用。在Oracle 10g中,收集统计信息会使得索引被监控,在Oracle 11g中该现象不复存在。尽管如此,该方式仅提供的是索引是否被使用。索引被使用的频率未能得以体现。下面的脚本将得到索引的使用率,可以很好的度量

  • 本文向大家介绍PHP编程中的Session阻塞问题与解决方法分析,包括了PHP编程中的Session阻塞问题与解决方法分析的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了PHP编程中的Session阻塞问题与解决方法。分享给大家供大家参考,具体如下: 使用session过程中,在开启session后,同一浏览器,执行同一程序,不同页面会被锁。不同浏览器不会出现这种情况。 疑问:是不是ses

  • 本文向大家介绍Oracle索引质量介绍和分析脚本分享,包括了Oracle索引质量介绍和分析脚本分享的使用技巧和注意事项,需要的朋友参考一下 索引质量的高低对数据库整体性能有着直接的影响。良好高质量的索引使得数据库性能得以数量级别的提升,而低效冗余的索引则使得数据库性能缓慢如牛,即便是使用高档的硬件配置。因此对于索引在设计之初需要经过反复的测试与考量。那对于已经置于生产环境中的数据库,我们也可以通过