관리 메뉴

공부한것들을 정리하는 블로그 입니다.

SELECT FOR UPDATE 구문 DB Exclusive LOCK 이슈 본문

경력 실무경험/실무 주제

SELECT FOR UPDATE 구문 DB Exclusive LOCK 이슈

호 두 2023. 4. 25. 01:14
반응형

* 해당 글은 계속 수정 예정입니다.
최초 작성일 2022.03
마지막 수정일 2023.04

 

 

# SELECT ~ FOR UPDATE


SELECT FOR UPDATE 구문은, 동시성 제어를 위하여 특정 데이터 ROW에 대해 배타적 락(Exclusive LOCK)을 거는 기능입니다.

ex) 영화관 예매 시스템의 잔여좌석 조회 등에 사용 가능


보통은 DB보안 관련 툴(DBSafer 등)을 사용중인 경우에 DDL, 운영DB로의 DML, LOCK 등이 차단되어야 마땅하나

위 SELECT FOR UPDATE 구문 등은 차단되지 않아 배타적 락이 걸리는 경우가 있습니다.


즉, 개발자가 해당 쿼리를 잘못 수행 할 경우, 세션이 유지되는 동안에는 해당 테이블/ROW에 락이 걸리게 될 수 있습니다.

개발자 입장에서 로컬PC에서 쿼리를 수행 할 경우, 위와같은 상황이 발생하지 않도록 주의하도록 합시다.

 


# 참고

1. 본인 블로그 : (참고사례)SELECT FOR UPDATE 구문 DB Exclusive LOCK 이슈

https://drsggg.tistory.com/545

 

(참고사례)SELECT FOR UPDATE 구문 DB LOCK 이슈

공부한것들을 정리하는 블로그 입니다. (참고사례)SELECT FOR UPDATE 구문 DB LOCK 이슈 본문

drsggg.tistory.com

 

 

 

반응형
Comments