📌 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
반응형