먼저 트랜잭션을 알아야 이해 할 수 있었던 것 같다. Transaction 하나의 작업을 수행하는데 필요한 데이터베이스의 연산을 모아놓은 것으로 데이터베이스 작업의 단위, SQL문의 집합이라고 생각하면 된다. 트랜잭션에서 중요한 것은 트랜잭션 단위로 구분해서 모두 성공하거나 모두 실패해야 데이터베이스의 일관성을 유지할 수 있다. Lock은 동시성을 제어하기 위한 기능이고 Transaction은 정합성을 보장하기 위한 기능이다. Dead Lock - 둘 이상의 프로세스가 다른 프로세스가 점유하고 있는 자원을 서로 기다릴 때 무한 대기에 빠지는 상황 - 교착상태란 두 개 이상의 트랜잭션이 특정 자원(테이블 또는 행)의 잠금(Lock)을 획득한 채 다른 트랜잭션이 소유하고 있는 잠금을 요구하면 아무리 기다려..