2013-06-14 2 views
1

쉘 스크립트 또는 sql 파일을 통해 psql 명령을 실행하여 PostgreSQL 데이터베이스에서 지정된 시간 동안 테이블을 잠글 수 있습니까?postgresql 테이블 잠금

LOCK TABLE 명령을 실행하면 스크립트가 종료 될 때 잠금도 사라져서 충분하지 않습니다.

+2

이 왜 긴 시간 동안 테이블을 잠글 않는다 스크립트보다? 당신은 아마도 뭔가 잘못하고 있습니다. – LtWorf

답변

3

LOCK TABLE과 함께 지정된 시간 동안 pg_sleep을 사용 하시겠습니까? 다음과 같은 스크립트를 (이 안된 주) 60 초 동안 테이블을 고정해야합니다

BEGIN WORK; 
LOCK TABLE MyTable IN ACCESS EXCLUSIVE MODE; 
SELECT pg_sleep(60); 
COMMIT WORK; 
+0

고마워. 이 논리를 사용하여 예상대로 작동합니다. – Rasna

+1

제안 된 스크립트가 작동하는 경우 가능한 경우 허용 된 응답 및 upvote로 표시하십시오. :) – Talvalin