[MySQL] 트랜잭션 격리 수준(isolation level)
·
DataBase/MySQL
경쟁상태 (Race Condition) 여러 클라이언트가 같은 데이터에 동시 접근 시 생기는 문제 트랜잭션의 격리성(Isolation) 이란? 여러 Transaction은 동시에 수행될 수 있다. 이때 각 Transaction은 다른 Transaction의 연산 작업이 끼어들지 못하도록 보장하여 각각의 트랜젝션은 서로 간섭 없이 독립적으로 수행되어야 한다. 현재 수행 중인 트랜잭션이 완료될 때까지 다른 트랜잭션들이 중간 연산 결과에 접근할 수 없음을 의미한다. 따라서 동시에 수행되는 transaction이 동일한 data를 가지고 충돌하지 않도록 제어해줘야 한다. 이를 동시성제어(concurrency control) 라고한다. 즉, 격리성을 보장하기 위해서는 여러 트랜잭션이 동시에 수행되더라도 마치 순서..