logo

[DB] 트랜잭션 정리

* 관련 기술 스택이 없습니다
emoji

• 트랜잭션은 데이터베이스의 상태를 변화시키는 논리적 작업 단위로, 전체가 수행되거나 전혀 수행되지 않아야 함(ALL or Nothing). 트랜잭션 연산에는 Commit(성공적 반영)과 Rollback(실패 시 원상 복구)이 있다.
• 트랜잭션의 특성(ACID)은 원자성(Atomicity), 일관성(Consistency), 고립성(Isolation), 영구성(Durability)으로 구성되며, 트랜잭션 격리 수준에 따라 Read Uncommitted, Read Committed, Repeatable Read 등의 수준이 있다.
• InnoDB의 MVCC 메커니즘은 트랜잭션에 대해 데이터의 이전 버전을 유지하고 일관된 스냅샷을 제공하여 격리 수준이 높아도 Phantom Read가 발생하지 않는다.
• 트랜잭션의 주의점으로는 필요한 최소의 코드에만 적용하고 범위를 최소화하여 교착 상태를 방지하는 것이 중요하다.

thumbnail
북마크
공유하기
신고하기
11분 분량
조회수 121
profile-image강민성
일 년 전
Copyright © 2024. Codenary All Rights Reserved.