📌 1. 개발 & 프로그래밍/Oracle & 데이터베이스
20강: 데이터 일관성 유지 - 트랜잭션 관리 심화
lastdetective
2025. 5. 15. 00:56
반응형
📊 오라클 데이터베이스 마스터하기
20강: 데이터 일관성 유지 - 트랜잭션 관리 심화
📶 안녕하세요! 이번 강의에서는 트랜잭션 격리 수준과 동시성 제어에 대해 심층적으로 알아보겠습니다.
🔄 1. 트랜잭션 격리 수준
여러 트랜잭션이 동시에 실행될 때 서로에게 영향을 주는 정도를 정의합니다.
- Read Uncommitted: 커밋되지 않은 데이터 읽기 가능 (오라클 미지원)
- Read Committed: 커밋된 데이터만 읽기 (오라클 기본값)
- Repeatable Read: 트랜잭션 내 동일한 쿼리 결과 보장
- Serializable: 완전한 격리 상태 보장
🔒 2. 오라클의 격리 수준
- Read Committed: 기본 설정
- Serializable: 높은 일관성 보장
- Read Only: 읽기 전용 모드
🔐 3. 동시성 제어와 잠금
🔑 3.1 잠금 종류
- 공유 잠금(S Lock): 읽기용
- 배타적 잠금(X Lock): 쓰기용
📊 3.2 잠금 단위
- 행 레벨: 개별 행 잠금
- 테이블 레벨: 전체 테이블 잠금
⚠️ 4. 잠금 문제점
- 교착 상태: 상호 대기 상태
- 블로킹: 작업 지연 현상
⚙️ 5. 격리 수준 설정
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;
팁: 애플리케이션 특성에 맞는 최적의 격리 수준을 선택하세요!
다음 강의에서는 데이터베이스 관리 및 유지보수에 대해 배워보겠습니다.
728x90
반응형