동시에 일어나는 작업량
2개의 쿼리가 필요
10000원 => 1000원 계좌이체
내 계좌에서 돈이 빠지고, 다른 계좌에는 돈이 들어가야!
DBMS 데이터 무결성이 중요하니까!
CPU동작 => 하드디스크 => RAM => 캐시
장애가 일어날때 데이터를 복구하는 작업의 단위가 됨


원.일.고.지
원자성
트랜잭션에 포함된 작업은 전부 수행되거나 아니면 전부 수행되지 않아야(ALL OR NOTHING)
일관성
무결성 유지
테이블 생성시 create문과 alter 문의 무결성 제약조건을 통해 명시됨
트랜잭션 수행 중에, 값이 변경되는 것을 허용 x
고립성(독립성)
동시에 접근 시 문제 발생.
한글 파일 => 편집모드 => 메일 전송을 위해 파일 첨부시 문제 발생
OS) 작업이 완료되지 않은 상태라!
데이터베이스는 공유가 목적이므로 여러 트랜잭션이 동시에 수행됨
고립성을 유지하기 위해서는 트랜잭션이 변경 중인 임시 데이터를 다른 트랜잭션이 읽고 쓸 때 제어 필요
ㅈ
START TRANSACTION: 트랜잭션 시작
START TRANSACTION
SET TRANSACTION [고립수준 OPTION]
COMMIT: 트랜잭션 종료
COMMIT
ROLLBACK: 트랜잭션을 전체 OR Savepoint까지 무효화시킴
ROLLBACK {TO <Savepoint>}
SAVEPOINT: savepoint 만듦
SAVEPOINT <savepoint>
트랜잭션이 동시에 수행될 때, 일관성을 해치지 않도록 트랜잭션의 데이터 접근을 제어하는 DBMS 기능
두 개의 트랜잭션이 한 개의 데이터를 동시에 갱신(UPDATE)할때 발생, 데이터베이스에서 절대 발생하면 안되는 현상
갱신손실 문제를 해결하기위한 상대방 트랜잭션이 데이터를 사용하는지 여부를 알 수 있는 규칙이 필요함
데이터를 수정 중이라는 사실을 알리는 방법의 잠금 장치


데이터베이스에 장애가 발생했을 때 데이터베이스를 일관성있는 상태로 되돌리는 dmms 기능
관리자 보안 백업 다룰 예정
2번 남음
교재 진도 다 빼고 nosql 공부해보자
시험범위는 트랜잭션까지