Dirty Read 는 확정 안 된 값을 읽는 것, Non-Repeatable Read 는 같은 것을 두 번 읽었더니 값이 달라진 것, Phantom Read 는 행 수가 달라진 것이다.
왜 그런지까지
여러 트랜잭션이 동시에 돌면 서로의 중간 상태가 보일 수 있다. 이를 막는 정도를 고립 수준이라 하며, READ UNCOMMITTED → READ COMMITTED → REPEATABLE READ → SERIALIZABLE 순으로 엄격해진다. 엄격할수록 문제는 줄지만 동시에 처리할 수 있는 양이 줄어 느려진다.
Non-Repeatable Read vs Phantom Read
Non-Repeatable 은 같은 행을 다시 읽었더니 값이 바뀐 것, Phantom 은 다시 읽었더니 없던 행이 생긴 것이다.
넣어 두면 오늘 · 1일 · 3일 · 7일 · 14일 · 30일 간격으로 다시 물어봅니다