CS / 데이터베이스
데이터베이스
- [데이터베이스][MySQL] 트랜잭션 격리 수준과 MySQL 동작 방식 MySQL을 기준으로 트랜잭션 격리 수준, 트랜잭션 이상 현상, MVCC, Next-Key Lock의 동작 방식을 정리 데이터베이스를 활용한 애플리케이션을 개발할 때, 동시에 여러 사용자가 같은 데이터를 읽고 쓰는 상황은 흔하게 발생한다. 이러한 동시성 환경에서 데이터의 정합성을 유지하려면 트랜잭션의 격리 수준을 적절히 설정하는 것이 중요하다. 트랜잭션 격리 수준은 하나의 트랜잭션이 다른 트랜잭션의 작업에 어느 정도까지 영향을 받지 않도록 보호할지를 정의하는 기준이다. #데이터베이스
- [데이터베이스][MySQL] 외래키와 잠금 대기 MySQL InnoDB에서 외래키 제약이 부모 테이블과 자식 테이블의 잠금 대기를 유발하는 방식을 정리한다. MySQL InnoDB에서 외래키는 부모 테이블과 자식 테이블 사이의 참조 무결성을 보장한다. 외래키 제약이 걸려 있으면 자식 테이블에 데이터를 추가하거나 수정할 때, 해당 값이 부모 테이블에 실제로 존재하는지 확인해야 한다. 반대로 부모 테이블의 레코드를 삭제하거나 외래키가 참조하는 값을 변경할 때는, 그 값을 참조하는 자식 레코드가 있는지 확인해야 한다. #데이터베이스
CS / 데이터베이스
데이터베이스
- [데이터베이스][MySQL] 트랜잭션 격리 수준과 MySQL 동작 방식 MySQL을 기준으로 트랜잭션 격리 수준, 트랜잭션 이상 현상, MVCC, Next-Key Lock의 동작 방식을 정리 데이터베이스를 활용한 애플리케이션을 개발할 때, 동시에 여러 사용자가 같은 데이터를 읽고 쓰는 상황은 흔하게 발생한다. 이러한 동시성 환경에서 데이터의 정합성을 유지하려면 트랜잭션의 격리 수준을 적절히 설정하는 것이 중요하다. 트랜잭션 격리 수준은 하나의 트랜잭션이 다른 트랜잭션의 작업에 어느 정도까지 영향을 받지 않도록 보호할지를 정의하는 기준이다. #데이터베이스
- [데이터베이스][MySQL] 외래키와 잠금 대기 MySQL InnoDB에서 외래키 제약이 부모 테이블과 자식 테이블의 잠금 대기를 유발하는 방식을 정리한다. MySQL InnoDB에서 외래키는 부모 테이블과 자식 테이블 사이의 참조 무결성을 보장한다. 외래키 제약이 걸려 있으면 자식 테이블에 데이터를 추가하거나 수정할 때, 해당 값이 부모 테이블에 실제로 존재하는지 확인해야 한다. 반대로 부모 테이블의 레코드를 삭제하거나 외래키가 참조하는 값을 변경할 때는, 그 값을 참조하는 자식 레코드가 있는지 확인해야 한다. #데이터베이스