# Read-committed

3개의 포스트

격리성 수준과 발생하는 문제

.o { color: #CD853F; } .b { color: #5F9EA0; } 들어가기전에.. 예제의 편의를 위해 위와 같은 약어를 사용하겠다. 오늘 하루동안 격리성 수준을 이해하기 위해 부단히도 애를 먹었다. 아직까지 전부 제대로된 이해를 하진 못했지만, 이 부분은 코드를 직접 작성하면서 경험을 하면서 익혀나가야 할 것 같다. 많이 부족해보일 수도 있겠지만, 이거 한번 이해해보려고 발버둥 쳤던 기록을 남기고 싶어서 이 글을 작성한다. READ UNCOMMITTED 가장 낮은 단계의 격리수준이다. Commit 되지 않은 데이터를 읽을 수 있다. 이 단계에서는 Dirty Read라는 데이터 일관성이 깨지는 문제가 발생하기 때문에 거의 모든 RDBMS에서는 사용하지 않는다. Dirty Read - Case 1 Dirty Read란, 트랜잭션 A가 진행되는 도중에 트랜잭션 B가 그 값을 변경하는 경우

2023년 2월 25일
·
0개의 댓글
·

트랜잭션

트랜잭션이란? DBMS에서 데이터를 다루는 논리적인 작업의 단위 보통 단일 SQL문을 사용하기도 하지만, 여러개의 SQL문을 순차적으로 수행하여 다루기도 한다. 트랜잭션을 이용하는 이유 데이터베이스에서 장애가 일어나는 경우, 데이터를 복구하는 작업의 단위로 사용할 수 있다. 데이터베이스에서 여러 작업이 동시에 같은 데이터를 다룰 경우에 작업을 분리하는 단위로 트랜잭션을 사용할 수 있다. 트랜잭션 문법 트랜잭션은 "TODO에 해당하는 쿼리를 '모두 실행시키거나', '모두 실행시키지 않게' 한다." 트랜잭션의 성질 원자성(Atomicity) : 트랜잭션에 포함된 작업은 "전부 수행되거나", "전부 수행되지 않아야 한다." 트랜잭션 수행중 오류가 발생할 경우, 회복(Recovery) 알고리즘을 통해 변경한 내용을 취소한다. 일관성(Consistency) : 트랜잭션을 수행하기 전이나 수행한 후나 "데이터베이스는 항상

2022년 6월 26일
·
0개의 댓글
·
post-thumbnail

PostgreSQL 기본설정 Isolation Level

PostgreSQL Default Isolation Level > READ COMMITTED Isolation Level PostgreSQL Default Isolation Level 확인 방법 SQL을 직접 실행해서 현재 사용하는 DB의 Default Isolation Level을 확인 할 수 있다. > SHOW defaulttransactionisolation Default Isolation Level REFERENCES [PostgreSQL 공식사이트](https://www.postgresql.org/docs/9.5/transaction-

2022년 2월 1일
·
0개의 댓글
·