首页数据库oracle锁表的原因是什么?如何解锁?

oracle锁表的原因是什么?如何解锁?

时间2024-03-24 22:14:03发布访客分类数据库浏览743
导读:这篇文章小编给大家分享的是oracle锁表的内容,一些朋友对于oracle锁表的原因不是很了解,对此本文就给大家来简单的讲讲,另外,本文还介绍了oracle解锁的方法,感兴趣的朋友也可以了解看看,下面让我们一起来学习一下吧! or...

这篇文章小编给大家分享的是oracle锁表的内容,一些朋友对于oracle锁表的原因不是很了解,对此本文就给大家来简单的讲讲,另外,本文还介绍了oracle解锁的方法,感兴趣的朋友也可以了解看看,下面让我们一起来学习一下吧!

oracle锁表的原因:

1. ORACLE中查看当前系统中锁表情况

select * from v$locked_object

可以通过查询

v$locked_object拿到sid和objectid,

然后用sid和v$session链表查询是哪里锁的表,

用v$session中的objectid字段和dba_objects的id字段关联,

查询详细的锁表情况。

查询SQL如下:

select sess.sid, 
       sess.serial#, 
       lo.oracle_username, 
       lo.os_user_name, 
       ao.object_name, 
       lo.locked_mode 
from v$locked_object lo, dba_objects ao, v$session sess, v$process p 
where ao.object_id = lo.object_id and lo.session_id = sess.sid;
    

查询是什么SQL引起了锁表的原因,SQL如下:

select l.session_id sid, 
       s.serial#, 
       l.locked_mode, 
       l.oracle_username, 
       s.user#, 
       l.os_user_name, 
       s.machine, 
       s.terminal, 
       a.sql_text, 
       a.action 
  from v$sqlarea a, v$session s, v$locked_object l 
where l.session_id = s.sid and s.prev_sql_addr = a.address 
order by sid, s.serial#;
    

2. ORACLE解锁的方法

alter system kill session 'sid,serial#';
    

spid 锁住的进程号

serial# v$session 这个视图中取出来的

现在大家对于oracle锁表原因、oracle解锁等等这些应该都有所了解了,本文对大家学习oracle锁表有一定的帮助,需要的朋友可以了解看看。最后,想要了解更多oracle数据库的内容,大家可以关注网络其它相关文章。

文本转载自PHP中文网

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!

oracle

若转载请注明出处: oracle锁表的原因是什么?如何解锁?
本文地址: https://pptw.com/jishu/652352.html
oracle出现中文乱码的情况怎样处理? Spring底层原理是什么,有哪些知识点?

游客 回复需填写必要信息