문서의 선택한 두 판 사이의 차이를 보여줍니다.
| 양쪽 이전 판이전 판다음 판 | 이전 판 | ||
| study:oracle:adv_owi_10g:latch_and_lock [2009/07/29 09:09] – starlits | study:oracle:adv_owi_10g:latch_and_lock [2025/10/03 22:30] (현재) – 바깥 편집 127.0.0.1 | ||
|---|---|---|---|
| 줄 9: | 줄 9: | ||
| ^ 분류 ^ 래치(latch) ^ 락(lock) ^ | ^ 분류 ^ 래치(latch) ^ 락(lock) ^ | ||
| - | ^ 목적 | | | | + | ^ 목적 | 메모리구조에 대한 베터적인 접근 |
| - | ^ 사용범위 | | | | + | ^ 사용범위 | SGA내부구조 |
| - | ^ 획득방식 | | | | + | ^ 획득방식 | 2가지 모드 |
| - | ^ 범위 | | | | + | ^ 범위 | SGA 내부 |
| - | ^ 복잡도 | | | | + | ^ 복잡도 | 단순 |
| - | ^ 지속기간 | | | | + | ^ 지속기간 | 아주 짧은 순간 \\ (microsecond 단위) |
| - | ^ 큐(Queue) | | | | + | ^ 큐(Queue) | Queue로 관리 안함 |
| - | ^ DeadLock | | | | + | ^ DeadLock | 발생안함 |
| 줄 120: | 줄 120: | ||
| ^ lock | 데이터베이스 전체 보호 | | ^ lock | 데이터베이스 전체 보호 | | ||
| - | ^ Enqueue 락 | V$LOCK | | + | ^ Enqueue 락 | V$LOCK | |
| - | ^ 일반 락 | V$SESSION_WAIT | | + | ^ 일반 락 | V$SESSION_WAIT | |
| ==== Lock 동작 매커니즘 ==== | ==== Lock 동작 매커니즘 ==== | ||
| + | |||
| + | === lock mode === | ||
| + | |||
| + | == 락모드(0~6) == | ||
| + | |||
| + | ^ 모드 ^ 설명 ^ | ||
| + | ^ 0 | None | | ||
| + | ^ 1 | NULL(N) | | ||
| + | ^ 2 | Sub-Shared(SS) \\ Row-Shared(RS) | | ||
| + | ^ 3 | Sub-Exclusive(SX) \\ Row-Exclusive(RX) | | ||
| + | ^ 4 | Shared(S) | | ||
| + | ^ 5 | Shared-Sub-Exclusive(SSX) \\ Shared-Row-Exclusive(SRX) | | ||
| + | ^ 6 | Exclusive(X) | | ||
| + | |||
| + | == 락모드호환성 == | ||
| + | |||
| + | ^ ^ N ^ SS ^ SX ^ S ^ SSX ^ X ^ | ||
| + | ^ N | O | O | O | O | O | O | | ||
| + | ^ SS | O | O | O | O | O | X | | ||
| + | ^ SX | O | O | O | < | ||
| + | ^ S | O | O | < | ||
| + | ^ SSX | O | O | X | X | X | X | | ||
| + | ^ X | O | X | X | X | X | X | | ||
| + | |||
| + | |||
| + | === lock 획득 === | ||
| + | |||
| ==== Lock 관련 Dynamic Views ==== | ==== Lock 관련 Dynamic Views ==== | ||
| - | ==== 일반적인 Lock 관련 대기이벤트들 ==== | ||
| + | ^ V$LOCK | ||
| + | ^ V$LOCKED_OBJECT | ||
| + | ^ V$ENQUEUE_LOCK | ||
| + | ^ DBA_WAITERS | ||
| + | |||
| + | ==== 일반적인 Lock 관련 대기이벤트들 ==== | ||
| + | ^ row cache lock | | ||
| + | ^ buffer busy waits | | ||
| + | ^ read by other session | | ||
| + | ^ library cache lock | | ||
| + | ^ library cache pin | | ||
| + | ^ DFS lock handle | ||