【Oracle】锁表的解决方法

Published April 27, 2020, 6:46 a.m. by admin

首先,查处锁定表的session 的sid,serial#,os_user_name, machine name,terminal 和执行的语句

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#;

发现551的session被锁定了,询问了下开发人员,时间和操作,确定对生成库没有任何印象。

sid   serial
551, 54589'
select * from v$locked_object;再次确认锁定的对象

select * from v$session  t where t.SID='551' ;可以根据551,再次确定session

完全无误后

使用赋予了dba权限的用户,例如:zsdwas

alter system kill session '551,54589';

故障解除!

这是我之前的一篇日志,归纳到此。今天又碰到了,30多条数据。

同类文章

【RAC】RAC扩展表空间

【自动化运维】批量查看Oracle的RMAN备份策略

【Oracle】Oracle 9i,10g,11g各自alert日志的位置

【SQL】ORACLE查询表的DML最后时间和操作记录条数

0 次评论

没有任何评论

添加一条评论