The ViewPG_LOCKS액세스를 제공합니다 공개 거래에서 보유한 자물쇠에 대한 정보에 데이터베이스 서버. 보다토토 커뮤니티 : 문서 : 7.4 : 토토 커뮤니티 제어토토 결과에 대한 더 많은 토론.
pg_locks당 하나의 행을 포함합니다 활성 토토 결과 가능 객체, 요청 된 토토 결과 모드 및 관련성 거래. 따라서 동일한 토토 결과 식 물체가 많이 나타날 수 있습니다 시간, 여러 거래가 토토 결과을 보유하거나 대기하는 경우 그것에. 그러나 현재 토토 결과 장치가없는 객체는 전혀 나타나지 않습니다. 잠긴 물체는 관계입니다 (예 : 테이블) 또는 거래 ID.
이보기에는 테이블 레벨 토토 결과 만 포함되어 있습니다 줄 수준. 트랜잭션이로드 레벨 토토 결과을 기다리는 경우 그것은 거래 ID를 기다리는 것으로보기에 나타납니다. 그 행 토토 결과의 현재 보유자.
표 43-32.pg_locks열
이름 | type | 참조 | 설명 |
---|---|---|---|
관계 | OID | PG_CLASS.Oid | 잠긴 관계의 OID 또는 잠금 장치 인 경우 NULL 객체는 트랜잭션 ID입니다 |
데이터베이스 | OID | pg_database.Oid | 잠긴 관계가있는 데이터베이스의 OID 잠긴 관계가 a 전역 공유 테이블 또는 잠금 식 물체가있는 경우 NULL 거래 ID |
거래 | xid | 트랜잭션의 ID 또는 잠금 가능 객체 인 경우 NULL 관계입니다 | |
PID | 정수 | 서버 프로세스를 보유하거나 기다리는 서버 프로세스의 프로세스 ID 이 자물쇠 | |
모드 | 텍스트 | 이 프로세스에서 보유하거나 원하는 잠금 모드의 이름 (보다섹션 12.3.1) | |
부여 | 부울 | 진실 토토 결과 장치가 유지되면, 토토 결과이 기다리고있는 경우 false |
부여연속으로 참입니다 표시된 세션에서 보유한 잠금 장치를 나타냅니다. 거짓 이 세션은 현재이를 인수하기를 기다리고 있음을 나타냅니다. 잠금, 이것은 다른 세션이 동일한 잠금 가능 객체의 충돌 잠금 모드. 대기 중 세션은 다른 자물쇠가 릴리스 될 때까지 잠을 자게됩니다 (또는 교착 상태 상황이 감지됩니다). 단일 세션이 기다릴 수 있습니다 한 번에 최대 한 자물쇠를 얻으려면
모든 트랜잭션은 거래에 대한 독점 잠금 장치를 보유합니다 전체 기간 동안 ID. 하나의 거래가 필요하다고 생각하는 경우 다른 거래를 구체적으로 기다리려면 다른 트랜잭션 ID에서 공유 잠금을 취득하려고합니다. 다른 거래가 종료되고 자물쇠를 출시합니다.
언제pg_locks보기입니다 액세스 된 내부 잠금 관리자 데이터 구조는 다음과 같습니다 순간적으로 잠겨 있으며 전망을 표시하기 위해 사본이 제작됩니다. 이를 통해 뷰는 일관된 결과 세트를 생성 할 수 있습니다. 일반 잠금 관리자 작업을 더 오래 차단하지는 않지만 필요한. 그럼에도 불구하고 데이터베이스에 약간의 영향이있을 수 있습니다 이보기가 자주 읽는 경우 성능.
pg_locks글로벌 관점을 제공합니다 데이터베이스 클러스터의 모든 잠금은 현재 데이터베이스. 비록관계열에 가입 할 수 있습니다pg_class.OID잠긴 관계를 식별하려면 이것이 그럴 것입니다 현재 데이터베이스의 관계에 대해서만 올바르게 작동합니다 (데이터베이스열은 현재 데이터베이스의 OID 또는 0).
통계 수집가를 활성화 한 경우PID열에 가입 할 수 있습니다procpid열의 열pg_stat_activity더 많은 정보를 얻으려면보기 세션에서 자물쇠를 보유하거나 기다리고 있습니다.