查看Oracle被锁的表以及如何解锁

1.查看是否有被锁的表:
select b.owner, b.object_name, a.session_id, a.locked_mode
from v$locked_object a, dba_objects b
where b.object_id = a.object_id
2.查看是哪个进程锁的
select b.username, b.sid,b.serial#, b.logon_time, b.status 
from v$locked_object a, v$session b
where a.session_id = b.sid order by b.logon_time
3.杀掉进程
alter system kill session 'sid,serial#';
  • sid : 用来标识一个session,它一般和process是对应的。一个process一般对应一个session,只要process不结束,则这个process建立的session具有同样的SID。在session结束后,新的session建立时,SID被重用。
  • serial# : 用来表示session的序列号。如上所述,process不结束,建立的session都是同一个sid,但是serial#不相同。oracle通过它来识别具有相同sid的不同session。

session 由 sid 和 serial# 这两个值确定

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容