天蓬老师2017-04-17 15:05:03
으아악
lock_mode는 매우 명확합니다.
이전에 실행된 문장 delete from t where a = 11; 은 (음의 무한대, 11] 간격에 배타적 잠금을 추가하기 때문입니다. 왜 Record Lock 대신 배타적 잠금인가요? 여기 a는 고유한 잠금이 아니기 때문입니다. index.index , 일반적인 인덱스입니다. 자세한 내용은
http://dev.mysql.com/doc/refman/5.7/en/innodb-locking.html을 참조하세요.
怪我咯2017-04-17 15:05:03
MySQL의 기본 세션 격리 수준은 반복 읽기이므로 더 많은 간격 잠금이 생성됩니다. 가상 읽기가 허용되는 경우 읽기 커밋 수준으로 다운그레이드하여 잠금 충돌 가능성을 줄일 수 있습니다.