2023/11/24 3

[Real MySQL] 5-1. 트랜잭션과 잠금: 트랜잭션

백은빈, 이성욱 님의 "Real MySQL" 책을 정리한 포스팅 입니다. 1. 트랜잭션하나의 논리적인 작업 단위로 실행되는 일련의 연산DML 문을 하나의 트랜잭션으로 묶어 실행할 수 있음 특징항목설명Atomicity (원자성)All or Nothing- 트랜잭션 내 모든 작업이 전부 수행되거나 전혀 수행되지 않음.- 오류 발생 시 전체 롤백. → Partial Update 방지, 데이터 정합성 보장Consistency (일관성)트랜잭션 전후로 데이터베이스의 무결성 제약조건이 항상 유지됨. 예: 외래 키, 고유 제약조건 등이 깨지지 않음Isolation (격리성)트랜잭션이 다른 트랜잭션의 영향을 받지 않고 독립적으로 수행됨. → 동시성 문제가 없도록 보장Durability (지속성)커밋된 트랜잭션의 결과는..

Database/Mysql 2023.11.24

[Real MySQL] 4-4. 아키텍쳐: MySQL 로그 파일

백은빈, 이성욱 님의 "Real MySQL" 책을 정리한 포스팅 입니다. 1. 에러 로그 파일실행되는 도중에 에러나 경고로 인해 출력되는 메시지 파일을 의미합니다.datadir에 .err 확장자로 생성됨 서버 시작 관련변수명을 인식하지 못한 경우특정 변수가 무시된 경우 트랜잭션 복구 메시지 (비정상적으로 종료된 경우)재처리 작업 과정서버가 비정상적으로 종료된 경우 재시작 시, 트랜잭션 복구를 시도함 완료되지 못한 트랜잭션을 정리서버가 종료되기 전에 완료되지 못한 트랜잭션을 정리하여 데이터 무결성을 유지함 디스크 기록서버가 정상적으로 재시작되었을 때, 복구하는 과정이 로그에 남음 쿼리 에러 메시지쿼리 도중 발생하는 문제점이 기록 커넥션 메시지 (비정상적으로 종료된 경우)클라이언트가 애플리케이션에 접속하지..

Database/Mysql 2023.11.24

[Real MySQL] 4-2. 아키텍쳐: InnoDB 스토리지 엔진 아키텍쳐

백은빈, 이성욱 님의 "Real MySQL" 책을 정리한 포스팅 입니다. 1. InnoDB 스토리지 엔진기능기능 항목설명레코드 기반 잠금행(레코드) 단위 잠금 → 충돌 최소화, 정밀한 동시성 제어 가능ACID 트랜잭션 지원원자성, 일관성, 격리성, 지속성을 보장 → 신뢰성 높은 데이터 처리 가능MVCC (다중 버전 동시성)읽기/쓰기 작업 간 충돌 없이 처리 가능 → 비차단 읽기(Non-locking read) 지원크래시 복구 기능로그 기반 자동 복구→ 장애 발생 시에도 데이터 복구 가능외래 키 제약 조건데이터 참조 무결성 보장→ 복잡한 관계형 데이터 설계 가능 장점장점 항목설명높은 동시성 처리여러 트랜잭션이 동시에 다른 레코드에 접근 가능 → 병렬 처리 효율적우수한 성능필요한 레코드에만 잠금 적용 → 불..

Database/Mysql 2023.11.24