thepg_buffercache
모듈은 공유 범퍼카 토토 캐시에서 실시간으로 일어나는 일을 검사하는 수단을 제공합니다.
모듈은 C 함수를 제공합니다pg_buffercache_pages
기록 세트를 반환하고보기pg_buffercache
편리한 용도로 기능을 감싸십시오.
기본적으로 사용은 슈퍼업자 및 회원으로 제한됩니다pg_monitor
역할. 를 사용하여 다른 사람에게 액세스 권한이 부여 될 수 있습니다.grant
.
pg_buffercache
보기보기에 노출 된 열의 정의는에 표시됩니다.테이블 F.15.
표 F.15. pg_buffercache
열
열 유형 설명 |
---|
ID, 범위 1 .. |
관계의 Filenode 번호 |
관계의 테이블 스페이스 OID |
관계의 데이터베이스 OID |
관계 내 포크 번호; 보다 |
관계 내 페이지 번호 |
페이지가 더럽습니까? |
Clock-Sweep Access Count |
이 범퍼카 토토를 고정시키는 백엔드 수 |
공유 캐시에 각 범퍼카 토토마다 하나의 행이 있습니다. 사용하지 않은 범퍼카 토토는 모든 필드가 널을 제외한 모든 필드로 표시됩니다Bufferid
. 공유 시스템 카탈로그는 데이터베이스 0에 속하는 것으로 표시됩니다.
캐시는 모든 데이터베이스에서 공유되므로 일반적으로 현재 데이터베이스에 속하지 않는 관계의 페이지가 있습니다. 이것은에서 일치하는 행이 일치하지 않을 수 있음을 의미합니다.pg_class
일부 행의 경우, 또는 잘못된 조인도있을 수 있습니다. 당신이 가입하려고한다면pg_class
, 가입을 행으로 제한하는 것이 좋습니다Reldatabase
현재 데이터베이스의 OID 또는 0과 동일합니다.
버퍼 관리자 잠금 장치는보기가 표시되는 버퍼 상태 데이터를 복사하기 위해 촬영되지 않으므로pg_buffercache
보기는 정상적인 버퍼 활동에 덜 영향을 미치지 만 모든 버퍼에서 일관된 결과 세트를 제공하지는 않습니다. 그러나 우리는 각 버퍼의 정보가 일관성이 있는지 확인합니다.
regression =# n.nspname, c.relname, count (*)를 버퍼로 선택하십시오 PG_BUFFERCACHE B에서 PG_CLASS C. b.relfilenode = pg_relation_filenode (c.oid) 및 B. relatabase in (0, PG_DATABASE에서 OID를 선택하십시오 여기서 datname = current_database ())) n.oid = c.relnamespace에서 pg_namespace n에 가입하십시오 n.nspname, c.relname의 그룹 3 Desc로 주문하십시오 제한 10; nspname | Relname | 버퍼 ------------+--------------------------------------- 공개 | delete_test_table | 593 공개 | delete_test_table_pkey | 494 PG_CATALOG | PG_ATTRIBUT | 472 공개 | quad_poly_tbl | 353 공개 | Tenk2 | 349 공개 | Tenk1 | 349 공개 | gin_test_idx | 306 PG_CATALOG | pg_largeobject | 206 공개 | gin_test_tbl | 188 공개 | spgist_text_tbl | 182 (10 줄)
Mark Kirkwood<markir@paradise.net.nz
디자인 제안 : Neil Conway<neilc@samurai.com
디버깅 조언 : Tom Lane<tgl@sss.pgh.pa.us
문서에 올바른 것이 없다면 일치하지 않습니다. 특정 기능에 대한 귀하의 경험 또는 추가 설명이 필요합니다. 사용이 양식문서 문제를보고하려면