– 1. 查看被锁的表
SELECT p.spid, a.serial#, c.object_name, b.session_id, b.oracle_username,b.os_user_name
FROM vprocess p, vsession a, v$locked_object b, all_objects c
WHERE p.addr = a.paddr
AND a.process = b.process
AND c.object_id = b.object_id
– 2. 查看是哪个进程锁的
SELECT sid, serial#, username, status, osuser FROM v$session where serial# = '5002'
SELECT sid, serial#, username, status, osuser FROM v$session where serial# = '3789'
– 3. 杀掉这个进程
alter system kill session 'sid,serial#';
alter system kill session '269,3789';
这篇博客介绍了如何查看数据库中被锁的表以及锁定这些表的进程。通过SQL查询,可以确定导致锁定的会话ID和序列号,并进一步展示如何使用ALTER SYSTEM命令安全地杀掉特定进程,以解决数据库的锁问题。
&spm=1001.2101.3001.5002&articleId=115074151&d=1&t=3&u=7117bb2f44664ad6b1b6541e4a6f59ae)
8539

被折叠的 条评论
为什么被折叠?



