MVCC
-
MVCC카테고리 없음 2022. 7. 14. 00:19
MySQL 은 격리수준에 따라 레코드를 읽어오는 방식에 차이가 있습니다. 그 이유는 MVCC(Multi Version Concurrency Control)와 관계가 아주 깊습니다. 이번 포스팅에서는 MVCC 에 대해 알아보겠습니다. MVCC 를 지원하는 이유 MVCC 는 잠금을 사용하지 않는 일관된 읽기를 제공하기 위해 사용됩니다. MVCC 는 MySQL 에서만 제공하는 기능이 아닌 레코드 레벨의 트랜잭션을 지원하는 DBMS라면 제공하는 기능입니다. MySQL 은 MVCC를 언두 로그(Undo log) 를 이용해 이 기능을 구현합니다. 참고로 여기서 얘기하는 Multi Version 은 하나의 레코드에 대해 여러개의 버전이 동시에 관리된다는 의미입니다. 우선 설명을 위해 아래와 같은 테이블을 하나 만들고..