14.2 InnoDB의 개념과 아키텍처
- 14.2.1 MySQL 및 ACID 모델
- 14.2.2 InnoDB 트랜잭션 모델 및 잠금
- 14.2.3 InnoDB 잠금 모드
- 14.2.4 일관성 비 록 읽기
- 14.2.5 잠금 읽기 (SELECT ... FOR UPDATE 및 SELECT ... LOCK IN SHARE MODE)
- 14.2.6 InnoDB 레코드 격차 및 넥스트 키 잠금
- 14.2.7 넥스트 키로 크에 의한 팬텀 문제 해결
- 14.2.8 InnoDB의 다양한 SQL 문에서 설정된 잠금
- 14.2.9 암시 적 트랜잭션 커밋과 롤백
- 14.2.10 교착 상태 감지 및 롤백
- 14.2.11 교착 상태의 해결 방법
- 14.2.12 InnoDB 멀티 버전
- 14.2.13 InnoDB 테이블 및 인덱스 구조
이 섹션의 정보는 InnoDB 테이블을 사용하여 대부분의 성능 및 기능을 취득하는 데 도움 백그라운드가 제공됩니다. 대상자는 다음과 같습니다.
익숙한 것으로 보인다 기능과 완전히 새로운 기능을 설명하기 위해 다른 데이터베이스 시스템에서 MySQL로 전환하는 모든 사용자.
InnoDB가 기본 MySQL 스토리지 엔진됐다 위해MyISAM테이블에서InnoDB로 전환하는 모든 사용자.InnoDB테이블의 설계 고려 사항, 성능 특성 및 확장 성을 세부적으로 이해하기 위해 응용 프로그램 아키텍처 또는 소프트웨어 스택을 검토하고있는 모든 사용자.
이 섹션에서는 다음을 학습합니다.
얼마나 엄격하게
InnoDB가 ACID 원칙을 준수하고 있는가?어떻게
InnoDB가 트랜잭션 을 구현하는지, 그리고 어떻게 트랜잭션의 내부 동작과 익숙한 다른 데이터베이스 시스템을 비교하는 것인가.어떻게
InnoDB가 쿼리 및 DML 문이 같은 테이블의 읽기와 쓰기를 동시에 수행 할 수있는 행 수준 잠금 을 구현하는 것인가.멀티 버전 병렬 처리 제어 ( MVCC )에 의해 적절한 시간이되기 전에 트랜잭션이 다른 각 데이터를 보거나 변경할 수 어떻게 해결 될 것인가.
디스크의
InnoDB관련 객체 ( 테이블 , 인덱스 , 테이블 스페이스 , Undo 로그 및 Redo 로그 )의 물리적 레이아웃.