일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 엑셀
- 마이플랫폼
- JavaScript
- 함수
- 이클립스
- Excel
- oracle
- 오라클
- 톰캣
- 자바
- Eclipse
- 에러
- 성능
- Book
- DB
- java
- miplatform
- 데이터베이스
- 회계
- error
- Report Designer
- MIP
- 한글
- 도서
- 튜닝
- Tomcat
- 오류
- 기타소득
- JEUS
- 태그를 입력해 주세요.
- Today
- Total
어느 가을날의 전환점
ORACLE|오라클 락(Lock) 조회 및 해제 본문
1) Lock 조회
select a.sid, a.serial#, a.username, a.process, b.object_name
from v$session a, dba_objects b, v$lock c
where a.sid = c.sid
and b.object_name = c.id1
and c.type = 'TM'
2) Lock 해제
alter system kill session 'SID, SERIAL#'
-- 락걸린 테이블 확인
SELECT do.object_name, do.owner, do.object_type, do.owner,
vo.xidusn, vo.session_id, vo.locked_mode
FROM
v$locked_object vo , dba_objects do
WHERE vo.object_id = do.object_id ;
--해당테이블이 락에 걸렸는지..
SELECT A.SID, A.SERIAL#, B.TYPE, C.OBJECT_NAME
FROM V$SESSION A, V$LOCK B, DBA_OBJECTS C
WHERE A.SID=B.SID AND B.ID1=C.OBJECT_ID
AND B.TYPE='TM' AND C.OBJECT_NAME IN ('테이블명');
/* 락발생 사용자와 sql, object 조회 */
SELECT distinct x.session_id, a.serial#,
d.object_name, a.machine, a.terminal,
a.program, b.address, b.piece, b.sql_text
FROM v$locked_object x, v$session a, v$sqltext b, dba_objects d
WHERE x.session_id = a.sid and
x.object_id = d.object_id and
a.sql_address = b.address
order by b.address,b.piece;
/* 락 발생 사용자확인 */
SELECT distinct x.session_id, a.serial#,
d.object_name, a.machine, a.terminal, a.program,
a.logon_time , 'alter system kill session ''' || a.sid || ', ' || a.serial# || ''';'
FROM gv$locked_object x, gv$session a, dba_objects d
WHERE x.session_id = a.sid and x.object_id = d.object_id
order by logon_time;
/* 접속 사용자 제거 */
--alter system kill session 'session_id,serial#';
alter system kill session '26,6044';
/* 현재 접속자의 sql 분석 */
SELECT distinct a.sid, a.serial#,
a.machine, a.terminal, a.program,
b.address, b.piece, b.sql_text
FROM v$session a, v$sqltext b
WHERE a.sql_address = b.address
order by a.sid, a.serial#,b.address,b.piece;
'Database > Oracle' 카테고리의 다른 글
ORACLE|ORA-28000 계정이 잠금되었습니다.(ACCOUNT IS LOCKED) (0) | 2013.08.30 |
---|---|
ORACLE|타입(TYPE, ROWTYPE), 커서(CURSOR) (0) | 2013.07.24 |
ORACLE|오라클 Multiple Insert - Insert All (2) | 2013.06.11 |
ORACLE|ORA-01858: 수치를 지정해야 할 위치에 비수치 문자가 지정되었습니다. (0) | 2013.05.10 |
ORACLE|오라클 수정 가능 조인 뷰(/*+ BYPASS_UJVC */), ORA-01779, MERGE (0) | 2013.05.09 |