1、查看所有被锁的表
select b.owner TABLEOWNER, b.object_name TABLENAME, c.OSUSER LOCKBY, c.USERNAME LOGINID, c.sid SID, c.SERIAL# SERIAL from v$locked_object a,dba_objects b, v$session c where b.object_id = a.object_id AND a.SESSION_ID =c.sid;
2、通过SID, SERIAL解锁
alter system kill session '4124, 27849';
其中4124是sid,27849是对应的SERIAL
3、若解锁失败,并报错
SQL 错误: ORA-00031: 标记要终止的会话 31. 00000 - "session marked for kill".
按一下步骤处理:
3.1 获取线程号
select b.spid,a.osuser,b.program from v$session a,v$process b where a.paddr=b.addr and a.sid=4124 #4124是上述sid
在这里插入图片描述
3.2 杀掉线程
登录param对应的服务器,我这里是wydb2(注意,在另外一台通信地址无法杀掉)。
kill -9 84975

3.3 杀掉之后再解锁
alter system kill session '4124, 27849';

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐