查锁住的表,以及kill进程,Oracle常用语句

本文介绍了Oracle数据库中锁管理的基本方法,包括如何查找被锁定的对象及其对应的会话信息,如何终止占用资源的会话,以及如何查询导致锁的具体SQL语句或过程。此外,还提供了给普通用户授权的方法。

--找出所有被锁的对象,定位出哪个回话占用

select l.session_id,o.owner,o.object_name
from v$locked_object l,dba_objects o
where l.object_id=o.object_id;

--所有导致锁的session

select t2.username, t2.sid, t2.serial#, t2.logon_time, t2.SQL_ID
  from v$locked_object t1, v$session t2
 where t1.session_id = t2.sid
 order by t2.logon_time;

  

--kill 所有占用资源的会话

alter system kill session 'sid,serial#';

--查询锁表的具体语句或者过程

select sql_id, hash_value,a.SQL_TEXT from v$sql a where a.sql_id = 'drw7jjgsy0rw1'; 

  

--给普通用户授权,比如访问v_$session视图的权限等

grant select on v_$session to hr;

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值