05. InnoDB 트랜잭션 처리 및 로그(Undo/Redo) 관리
·
MySQL
우선 Undo영역에 대한 이해부터 하고 넘어가자. MVCC(Multiversion Concurrency Control) 란? 잠금 없이 일관된 읽기를 제공하는 것으로, 크게 두 가지 접근법이 있다. 1. Perssimistic Lock : DB에 다중 버전의 레코드를 저장해 두고, 더 이상 필요하지 않을 때 모아둔 레코드를 버리는 방식 - PostgreSQL, SQL server 등에서 사용 2. Undo : 최신 버전의 데이터만 DB 안에 저장해 두고, Undo를 이용하여 이전 버전의 데이터를 재구성하는 방식 - MySQL InnoDB, Oracle 등에서 사용 어떤 레코드에 대해 UPDATE 쿼리 등의 write가 발생하면 Undo에는 이전 이미지를 넣고, 버퍼 풀에는 새로 write한 내용을 가지고..
01. MySQL 아키텍처
·
MySQL
0. MySQL이란? MySQL은 세계에서 가장 많이 쓰이는 오픈 소스의 관계형 데이터베이스 관리 시스템(RDBMS)중 하나로, 다중 스레드 및 다중 사용자 형식의 데이터베이스 관리 시스템이자 오라클에서 배포한 무료 오픈소스이다. 따라서 많은 웹 애플리케이션이 MySQL을 기본 데이터베이스로 채택하고 있다. 1. MySQL의 전체 구조 MySQL 서버는 크게 MySQL 엔진과 스토리지 엔진으로 구분된다. 1) MySQL 엔진 DBMS의 두뇌 역할!! 요청된 SQL 문장을 분석하거나 최적화 수행 커넥션 핸들러(클라이언트로부터의 접속 및 쿼리 요청을 처리)와 SQL 파서, 전처리기, 그리고 쿼리의 최적화된 실행을 위한 옵티마이저가 중심을 이룬다. 성능 향상을 위한 보조 저장소 기능(MyISAM의 키 캐시나 ..
erin.yoon
'RealMySQL' 태그의 글 목록