이 문서는 지원되지 않는 버전의 토토 사이트 추천을위한 것입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다토토 사이트 순위 PostgreSQL : 문서 : 17 : 52.12. pg_locks버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

47.59. PG_LOCKS

보기PG_LOCKS액세스를 제공합니다 공개 거래에서 보유한 자물쇠에 대한 정보 데이터베이스 서버. 보다메이저 토토 사이트 : 문서 : 9.3 : 동시성 제어더 많은 토토 사이트 추천에 대한 토론.

PG_LOCKS활성 당 1 행을 포함합니다 잠금 가능 객체, 요청 된 잠금 모드 및 관련 트랜잭션. 따라서 여러 경우 동일한 잠금 가능 객체가 여러 번 나타날 수 있습니다. 거래는 그 자물쇠를 보유하거나 기다리고 있습니다. 그러나, an 현재 잠금 장치가없는 개체는 모두.

몇 가지 고유 한 유형의 잠글 수있는 객체가 있습니다 : 전체 관계 (예 : 테이블), 개별 관계 페이지, 개인 관계, 트랜잭션 ID (가상 및 영구 모두 IDS) 및 일반 데이터베이스 개체 (클래스 OID 및 객체 OID,와 같은 방식으로pg_description또는pg_depender). 또한 관계를 연장 할 권리 별도의 토토 사이트 추천 가능 객체로 표시됩니다. 또한,"자문"토토 사이트 추천은 숫자로 찍을 수 있습니다 사용자 정의 의미.

표 47-60.PG_LOCKS

이름 type 참조 설명
Locktype 텍스트 토토 사이트 추천 식 개체의 유형 :관계, Extend, page, 튜플, TransactionId, virtualxid, 개체, UserLock, 또는자문
데이터베이스 OID pg_database.Oid 잠금 대상이 존재하는 데이터베이스의 OID 또는 0 인 경우 대상은 공유 객체이거나 대상이 거래 ID
관계 OID pg_class.Oid 잠금에 의해 타겟팅 된 관계의 OID 또는 대상이면 NULL 관계 또는 관계의 일부가 아닙니다
페이지 Integer 관계 내의 잠금을 대상으로하는 페이지 번호 또는 null 대상이 관계 페이지 또는 튜플이 아닌 경우
튜플 smallint 페이지 내의 잠금을 대상으로하는 튜플 번호 또는 if 대상은 튜플이 아닙니다
virtualxid 텍스트 잠금을 대상으로 한 트랜잭션의 가상 ID 또는 IF 대상은 가상 트랜잭션 ID가 아닙니다
TransactionId xid 잠금 장치를 대상으로 한 트랜잭션의 ID 또는 대상은 거래 ID가 아닙니다
classId OID PG_CLASS.Oid 잠금 대상을 포함하는 시스템 카탈로그 또는 NULL의 OID 대상이 일반 데이터베이스 개체가 아닌 경우
objid OID 모든 OID 열 시스템 카탈로그 내에서 잠금 대상의 OID 또는 IF 대상은 일반 데이터베이스 개체가 아닙니다
objsubid smallint 열 번호 자물쇠를 대상으로합니다 (classIdandobjid테이블 자체를 참조하십시오) 또는 0이 대상이 다른 경우 0 일반 데이터베이스 개체 또는 대상이 일반적인 경우 NULL 데이터베이스 개체
VirtualTransaction 텍스트 이것을 보유하거나 기다리고있는 트랜잭션의 가상 ID 잠그다
PID 정수 이 잠금을 보유하거나 기다리고있는 서버 프로세스의 프로세스 ID, 또는 NULL 자물쇠가 준비된 트랜잭션에 의해 유지되는 경우
모드 텍스트 이 프로세스에서 보유하거나 원하는 잠금 모드의 이름 (참조섹션 13.3.1and섹션 13.2.3)
부여 부울 진실 토토 사이트 추천 장치가 유지되면, 토토 사이트 추천이 기다리고있는 경우 false
FastPath 부울 FAST 경로를 통해 토토 사이트 추천을 취한 경우 True 메인을 통해 가져 오면 거짓 토토 사이트 추천 테이블

부여연속으로 참입니다 표시된 트랜잭션에 의해 보유 된 잠금을 나타냅니다. 거짓 이 거래가 현재 인수를 기다리고 있음을 나타냅니다 이 자물쇠는 다른 거래가 동일한 잠금 가능 객체의 충돌 잠금 모드. 대기 중 거래가 다른 자물쇠가 릴리스 될 때까지 (또는 교착 상태 상황이 감지됩니다). 단일 거래는 가능합니다 한 번에 최대 한 자물쇠를 얻기를 기다리고 있습니다.

모든 트랜잭션은 가상에 대한 독점 잠금 장치를 보유합니다 전체 기간 동안 트랜잭션 ID. 영구 ID 인 경우 거래에 할당 된 (일반적으로 발생하는 경우에만 발생합니다. 트랜잭션은 데이터베이스의 상태를 변경합니다. 영구 거래 ID가 끝날 때까지 독점 잠금. 언제 한 거래는 다른 거래를 위해 특별히 대기해야한다는 것을 알게됩니다. 거래, 그것은 다른 트랜잭션 ID (에 따라 가상 또는 영구 ID 상황). 그것은 다른 거래 일 때만 성공할 것입니다 자물쇠를 종료하고 릴리스합니다.

튜플은 잠긴 유형의 물체이지만 로우 레벨 잠금은 메모리가 아닌 디스크에 저장되므로 이보기에는 줄 수준의 잠금이 일반적으로 나타나지 않습니다. 경우 a 트랜잭션은로드 레벨 잠금을 기다리고 있습니다. 일반적으로 나타납니다. 영구 거래 ID를 기다리는 것으로보기에서 그 행 잠금의 현재 보유자.

자문 잠금 장치는 하나의bigint값 또는 두 정수 값. 에이bigint키는 고차로 표시됩니다 의 절반classId열, 그 의 저차 절반objid열, 그리고objsubid1과 같습니다. 원래bigint값은 다시 조립 될 수 있습니다 표현(classId :: bigint << 32) | objid :: bigint. 정수 키는 첫 번째 키로 표시됩니다 에서classId열, 두 번째 키 에서objid열,objsubid2와 같습니다 키는 사용자에게 달려 있습니다. 자문 잠금은 각 데이터베이스에 로컬입니다. 그래서데이터베이스열은 의미가 있습니다 자문 잠금을 위해.

pg_locks글로벌 관점을 제공합니다 데이터베이스 클러스터의 모든 잠금은 현재 데이터베이스. 비록관계열에 가입 할 수 있습니다pg_class.OIDto 잠긴 관계를 식별하면 올바르게 작동합니다 현재 데이터베이스의 관계 (데이터베이스열은 현재 데이터베이스입니다 OID 또는 0).

thePID열에 가입 할 수 있습니다PID열의 열pg_stat_activity더 많은 정보를 얻으려면 세션에서 각 자물쇠를 보유하거나 기다리고 있습니다. 예

선택 *에서 PG_LOCKS FROM LEFT PG_STAT_ACTIVITY PSA에 가입하십시오
    on pl.pid = psa.pid;

또한 준비된 트랜잭션을 사용하는 경우VirtualTransaction열에 가입 할 수 있습니다거래열의 열PG_PREPARED_XACTS더 많은 것을 얻으려면 잠금 장치를 보유하는 준비된 거래에 대한 정보. (준비된 거래는 자물쇠를 기다릴 수 없지만 계속 실행 중에 획득 한 자물쇠를 잡습니다.) 예 :

선택 * PG_LOCKS FROM PL LEFT JOIN PG_PREPARED_XACTS PPX
    pl.VirtualTransaction = '-1/'||에서 ppx.Transaction;

thepg_locks보기는 데이터를 표시합니다 일반 잠금 관리자와 술어 잠금 관리자 모두 별도의 시스템입니다. 또한 일반 잠금 관리자 자물쇠를 정기적으로 세분화하고빠른 경로잠금. 이 데이터는 보장되지 않습니다 완전히 일관성. 보기가 쿼리되면 빠른 경로에 대한 데이터 자물쇠 (FastPath=true)는 각 백엔드에서 한 번에 하나씩 수집됩니다. 전체 잠금 관리자의 상태를 동결하지 않고 정보가있는 동안 잠금을 취하거나 해제 할 수 있습니다. 모였다. 그러나이 자물쇠는 충돌하지 않는 것으로 알려져 있습니다. 현재 다른 자물쇠가있는 상태에서. 모든 백엔드 후에 빠른 경로 잠금 장치에 대해 질문을 받았으며 나머지 일반 잠금 장치 관리자는 단위로 잠겨 있으며 모두의 일관된 스냅 샷 나머지 자물쇠는 원자 작용으로 수집됩니다. 잠금 해제 후 일반 잠금 관리자 인 Prectice Lock Manager와 비슷합니다. 잠금 및 모든 술어 잠금 장치는 원자 작용으로 수집됩니다. 따라서 빠른 경로 잠금을 제외하고 각 잠금 관리자는 일관된 결과 세트를 전달하지만 우리는 둘 다 잠그지 않습니다. 잠금 관리자는 동시에 잠금을 취할 수 있습니다. 또는 일반 잠금 관리자를 심문 한 후 출시 및 우리가 술어 잠금 관리자를 심문하기 전에.

일반 및/또는 술어 잠금 관리자를 잠그십시오 이보기가 매우 자주 인 경우 데이터베이스 성능에 약간의 영향을 미칩니다. 접근. 자물쇠는 최소 시간 동안 만 유지됩니다. 잠금 관리자로부터 데이터를 얻는 데 필요하지만 성능 영향의 가능성을 완전히 제거하십시오.