wait/lock/metadata/sql/mdl로 MDL 병목 관찰하기
MySQL Performance Schema에서 Metadata Lock의 대기 관계를 식별하고 DDL 지연과 운영 장애를 진단하는 방법을 정리한다.
전체 문서 13개
MySQL Performance Schema에서 Metadata Lock의 대기 관계를 식별하고 DDL 지연과 운영 장애를 진단하는 방법을 정리한다.
MySQL 트랜잭션을 짧게 유지하고 잠금 오류와 commit 결과 불확실성에 안전한 멱등 재시도 구조를 설계하는 방법을 정리한다.
MySQL Savepoint의 내부 동작과 partial rollback 설계, 잠금·오류 처리·Aurora MySQL 운영 주의점을 정리한다.
MySQL 행 잠금 대기 제한의 동작 원리와 진단 방법, 안전한 트랜잭션 재시도 정책을 운영 관점에서 정리한다.
MySQL InnoDB deadlock의 발생 조건과 희생자 선택을 이해하고 LATEST DETECTED DEADLOCK 보고서를 읽어 재현·예방하는 절차를 정리한다.
MySQL Metadata Lock의 획득과 대기 원리를 이해하고 긴 트랜잭션과 DDL 차단을 진단하고 예방하는 방법을 정리한다.
MySQL InnoDB가 Phantom read를 제어하는 MVCC와 next-key lock의 역할, 격리 수준별 차이와 운영 진단법을 설명한다.
InnoDB의 record lock, gap lock, next-key lock이 B+Tree 검색 구간을 보호하는 원리와 진단·설계 기준을 설명한다.
InnoDB locking read가 최신 커밋 버전을 읽고 record·gap lock을 획득하는 원리와 FOR UPDATE, FOR SHARE의 운영 기준을 설명한다.
InnoDB의 READ COMMITTED와 REPEATABLE READ를 Read View 수명, phantom, gap lock, 운영 선택 기준으로 비교한다.
InnoDB MVCC에서 consistent read와 current read가 서로 다른 버전을 읽는 원리와 격리 수준별 운영 영향을 정리한다.
InnoDB Foreign key의 인덱스 요구 조건, 참조 무결성 검사 잠금, cascade 비용과 운영 진단 절차를 쓰기 경로 중심으로 정리한다.
MySQL 8.0 InnoDB data dictionary와 metadata lock이 DDL, DML, 장애 대응, 온라인 변경 작업에 미치는 영향을 운영 관점에서 정리한다.