DBMS - 데이터베이스 락(lock) 종류와 트랜잭션 격리수준(isolation level)
RDBMS에서 데이터를 일관성을 위한 동기화(Lock)을 설정하는 방법은 크게 2가지로 나뉜다. 하나는 비관적 락, 나머지 하나는 낙관적 락이다. 아래는 각각에 대한 개략적인 설명이다. Pessimistic lock(비관적 락)비관적 락이란 트랜잭션이 시작될 때 데이터의 행에 Shared Lock 또는 Exclusive Lock을 걸고 시작하는 방법이다. 즉, write를 하기위해서는 Exclucive Lock을 얻어야하는데 Shared Lock이 다른 트랜잭션에 의해서 걸려 있으면 해당 Lock을 얻지 못해서 업데이트를 할 수 없다 수정을 하기 위해서는 shared lock을 설정한 트랜잭션이 종료(commit or rollback)된 후 exclusive lock을 설정해야한다. shared l..
2025.01.22