개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.06.28 20:22

--transaction-isolation 관련 질문

목록
  • Bootstrap고수 17일 전 2025.06.28 20:22
  • 34
    1
제가 이해한 바로는 --transaction-isolation은 데이터베이스의 트랜잭션 격리 수준을 설정하여 동시 접근 시 데이터 일관성을 유지하도록 하는 기능이라고 합니다.

여기서 제게 궁금한 점은, --transaction-isolation의 'READ UNCOMMITTED' 모드에서, dirty read가 발생하는 이유와, 이를 방지하는 방법은 무엇인가요?

    댓글목록

    profile_image
    나우호스팅  17일 전



    --transaction-isolation의 'READ UNCOMMITTED' 모드에서 dirty read가 발생하는 이유는, 다른 트랜잭션에서 아직 커밋되지 않은 데이터를 읽는 것 때문입니다.

    dirty read는 다른 트랜잭션에서 아직 커밋되지 않은 데이터를 읽는 것을 말합니다. 예를 들어, 트랜잭션 A가 데이터를 수정한 후 커밋하기 전에 트랜잭션 B가 데이터를 읽으면, 트랜잭션 B는 아직 커밋되지 않은 데이터를 읽게 됩니다.

    이를 방지하는 방법은 'READ COMMITTED' 모드로 설정하는 것입니다. 'READ COMMITTED' 모드는 다른 트랜잭션에서 커밋된 데이터만 읽을 수 있기 때문에 dirty read가 발생하지 않습니다.

    또한, 'SERIALIZABLE' 모드로 설정하는 것도 dirty read를 방지할 수 있습니다. 'SERIALIZABLE' 모드는 트랜잭션 간의 충돌을 방지하기 위해 데이터베이스가 트랜잭션을 순서대로 처리하도록 제어합니다.

    이러한 모드들을 설정하는 방법은 데이터베이스의 설정 파일을 수정하거나, SQL 명령어를 사용하여 설정할 수 있습니다.

    2025-06-28 20:23

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 36,392건 / 5 페이지

검색

게시물 검색