>  기사  >  데이터 베이스  >  Oracle 잠긴 테이블을 쿼리하는 방법

Oracle 잠긴 테이블을 쿼리하는 방법

WBOY
WBOY원래의
2022-01-26 10:37:5264856검색

Oracle에서는 SELECT 문을 사용하여 잠긴 테이블을 쿼리할 수 있습니다. 이 문은 단순히 데이터 정보를 쿼리하는 데 사용됩니다. 구문은 "select*from v$locked_object a,dba_objects b where b.object_id=a.object_id"입니다. .

Oracle 잠긴 테이블을 쿼리하는 방법

이 튜토리얼의 운영 환경: Windows 10 시스템, Oracle 11g 버전, Dell G3 컴퓨터.

Oracle에서 잠긴 테이블을 쿼리하는 방법

1. 테이블이 잠긴 이유를 쿼리합니다

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

2. 잠긴 테이블을 쿼리합니다.

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

3 해당 프로세스를 종료합니다. 즉, 잠금을 해제하는 것입니다

select b.username,b.sid,b.serial#,logon_time from  v$locked_object a,v$session b where a.session_id = b.sid order by b.logon_time

--135는 sid 397은 serial#

참고: 사용자에게 DBA 권한이 있어야 합니다. 그렇지 않으면 테이블과 뷰를 찾을 수 없다는 메시지가 표시됩니다.

권장 튜토리얼: "

Oracle 비디오 튜토리얼

"

위 내용은 Oracle 잠긴 테이블을 쿼리하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.