DB락 문의 0 1 1,085

by 정목단 [Oracle 기초] DB LOCKED SESSION LOCKED 동시접속제어 [2016.12.05 12:42:26]


안녕하세요.

현재 저는 시스템 운영을 하고 있습니다.

문의내용은 아래와 같습니다. 도와주십시오.

=============================

일주일에 한번은 사용하고 있는 웹페이지가 무한로딩이 되면서 사용에 불편이 있어서

어찌 저찌 검색의 힘을 빌려 락을 조회 봤는데

특정테이블에 락이 걸리는 것을 확인했습니다.

이경우 락이 걸린것은 테이블 한개 인데 왜 시스템 전체가 다운이 되는 걸까요??

너무 리소스를 많이 잡아 먹는건가요?

해당 테이블에 관한 특이점은.

리스트를 부르면 테이블 A,B를 조인한 쿼리를 실행합니다.

A라는 DB에서 값을 부르고, B라는 DB에 데이터가 널이면 업데이트를 한 후 리스트값을 조율해서 화면에 뿌리는 구조입니다.

그래서 리스트에 동시접속을 최소한 하고자 리스트에 접근권한을 제어하여 문제의 현상은 횟수가 줄긴했지만

여전히 해당 현상이 간간히 일어나고 있습니다.

어디를 어떻게 확인해야 할지 점검할 만한 부분이라도 조언을 구합니다.

감사합니다.

by 구루씨 [2016.12.07 09:57:41]

저도 락에 대해서 몰라서 여쭤봤는데 도움이 되진 않겠지만 제가 배운 것을 한번 정리해보자면

하나의 테이블을 두명 이상의 유저(세션)가 작업할 때 락이 걸리는 것으로 알고 있는데요.

해당 작업 자체를 트랜잭션이라고 하고 롤백이나 커밋을 하지 않을 경우

락이 걸리는 것으로 알고있습니다.

전문가의 의견은 아니지만

짧은 소견으로는

롤백이나 커밋 처리를 조금 더 빠르게 하면 되지 않을까요?

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입