Postgresql 9.3.25 문서 | ||||
---|---|---|---|---|
토토 사이트 추천 : 문서 : 9.3 : 표준 유닉스 도구 | 롤 토토 : 문서 : 9.3 : 데이터베이스 활동 모니터링 | 27 장. 데이터베이스 활동 모니터링 | 메이저 토토 사이트 : 문서 : 9.3 : 잠금보기 |
PostgreSQL's토토 캔 수집가는 지원하는 서브 시스템입니다 서버 활동에 대한 정보 수집 및보고. 현재 컬렉터는 테이블 및 인덱스에 대한 액세스를 계산할 수 있습니다. 디스크 블록 및 개별 열 용어에서. 또한 추적합니다 각 테이블의 총 행 수와 진공에 대한 정보 각 테이블의 작업을 분석하십시오. 또한 전화를 셀 수 있습니다 사용자 정의 기능 및 각 기능에 소요되는 총 시간.
postgresql도 지원합니다 현재 다른 사람이 실행중인 정확한 명령보고 서버 프로세스. 이 시설은 수집가와 무관합니다 프로세스.
토토 캔 수집이 쿼리에 약간의 오버 헤드가 추가되므로 실행, 시스템은 수집하거나 수집하지 않도록 구성 할 수 있습니다. 정보. 이것은 구성 매개 변수로 제어됩니다 일반적으로postgresql.conf. (보다범퍼카 토토 : 문서 : 9.3 : 서버 구성에 대한 자세한 내용 구성 매개 변수 설정.)
매개 변수track_activities서버 프로세스.
매개 변수track_counts테이블 및 인덱스에 대한 토토 캔가 수집되는지 여부를 제어합니다 접근.
매개 변수track_functions사용자 정의 함수의 사용 추적 활성화.
매개 변수track_io_timing블록 읽기 및 쓰기 시간의 모니터링 가능.
일반적으로 이러한 매개 변수는에 설정됩니다.postgresql.conf모든 서버에 적용되도록합니다 프로세스이지만 개인에서 켜거나 끄는 것은 가능합니다. 사용 세션스포츠 토토 : 문서 : 9.3 : set명령. (에게 일반 사용자가 활동을 숨기지 못하게합니다 관리자, 슈퍼업자만이이를 변경할 수 있습니다 가있는 매개 변수SET.)
토토 캔 수집가는 수집 된 정보를 전달합니다 다른PostgreSQL임시 파일. 이 파일은 이름이 지정된 디렉토리에 저장됩니다 그만큼stats_temp_directory매개 변수,PG_STAT_TMP기본적으로. 을 위한 더 나은 성능,stats_temp_directoryRAM 기반 파일 시스템을 가리켜 물리적 I/O를 감소시킬 수 있습니다. 요구 사항. 서버가 종료되면 토토 캔 데이터는에 저장됩니다.PG_STAT서버 전체에 토토 캔를 유지할 수 있도록 하위 디렉토리 다시 시작.
몇 가지 사전 정의 된 뷰, 나열된테이블 27-1, 토토 캔 결과를 보여줄 수 있습니다 수집. 또는 The를 사용하여 사용자 정의보기를 구축 할 수 있습니다 기본 토토 캔 기능,섹션 27.2.3.
통계를 사용하여 현재 활동을 모니터링 할 때 정보가 업데이트되지 않는다는 것을 인식하는 것이 중요합니다 순간적으로. 각 개별 서버 프로세스는 새로 전송됩니다 유휴 상태가되기 직전에 수집가에게 통계적 계산; 그래서 a 여전히 진행중인 쿼리 또는 거래는 총계가 표시됩니다. 또한 수집가 자체는 새로운 보고서를 제출합니다 대부분의 경우pgstat_stat_interval밀리 초 (서버를 구축하는 동안 변경되지 않는 한 500ms). 그래서 표시된 정보는 실제 활동보다 뒤떨어집니다. 하지만, 현재 수집 한 현재 쿼리 정보track_activities항상 최신입니다.
또 다른 중요한 점은 서버 프로세스가 요청 될 때
이러한 통계를 표시하려면 먼저 가장 많이 가져옵니다.
최근 보고서가 수집기 프로세스에 의해 방출 된 다음 계속됩니다.
이 스냅 샷을 모든 통계 뷰 및 기능에 사용하려면
현재 거래의 끝. 따라서 통계가 표시됩니다
현재 트랜잭션을 계속하는 한 정적 정보.
마찬가지로 모든 세션의 현재 쿼리에 대한 정보는 다음과 같습니다.
그러한 정보가 처음 요청 될 때 수집됩니다.
거래 및 동일한 정보가 전체적으로 표시됩니다
거래. 이것은 버그가 아닌 기능입니다.
통계에서 몇 가지 쿼리를 수행하고 상관 관계가 있습니다.
숫자가 아래에 바뀌는 것을 걱정하지 않고 결과
너. 그러나 각 쿼리마다 새로운 결과를보고 싶다면
트랜잭션 블록 외부에서 쿼리를 수행하십시오. 또는 당신은
호출 할 수 있습니다PG_STAT_CLEAR_SNAPSHOT
(),
현재 트랜잭션의 통계 스냅 샷을 폐기합니다
(경우). 다음 통계 정보를 사용하면 새로운
스냅 샷을 가져올 스냅 샷.
거래는 자체 토토 캔를 볼 수 있습니다 (아직 수집가에게 전송되지 않음).pg_stat_xact_all_tables, PG_STAT_XACT_SYS_TABLE, PG_STAT_XACT_USER_TABLES및PG_STAT_XACT_USER_FUNTIONS. 이 숫자는 그렇지 않습니다 위에서 언급 한대로 행동하십시오. 대신 그들은 지속적으로 업데이트됩니다 거래.
표 27-1. 표준 토토 캔보기
보기 이름 | 설명 |
---|---|
pg_stat_activity | 서버 프로세스 당 하나의 행, 상태 및 현재 쿼리와 같은 해당 프로세스의 현재 활동. 보다pg_stat_activity자세한 내용. |
PG_STAT_BGWRITER | 배경 작가에 대한 토토 캔를 보여주는 하나의 행만 프로세스의 활동. 보다PG_STAT_BGWRITER자세한 내용. |
PG_STAT_DATABASE | 데이터베이스 전체 토토 캔를 표시하는 데이터베이스 당 1 행. 보다PG_STAT_DATABASE자세한 내용. |
pg_stat_all_tables | 현재 데이터베이스의 각 테이블마다 1 개의 행, 표시 해당 특정 테이블에 대한 액세스에 대한 통계. 보다pg_stat_all_tables자세한 내용. |
PG_STAT_SYS_TABLE | 동일pg_stat_all_tables시스템 테이블 만 표시됩니다. |
PG_STAT_USER_TABLE | 동일pg_stat_all_tables사용자 테이블 만 표시됩니다. |
pg_stat_xact_all_tables | 유사pg_stat_all_tables, 그러나 지금까지 현재 거래 내에서 취한 조치 ( 이다not아직 포함pg_stat_all_tables및 관련 견해). 라이브 및 죽은 행 및 진공 청소기의 수에 대한 열 및 이 견해에는 작업 분석이 존재하지 않습니다. |
PG_STAT_XACT_SYS_TABLE | 동일pg_stat_xact_all_tables, 시스템 테이블 만 표시됩니다. |
PG_STAT_XACT_USER_TABLES | 동일pg_stat_xact_all_tables, 사용자 테이블 만 표시됩니다. |
PG_STAT_ALL_INDEXES | 현재 데이터베이스의 각 인덱스마다 1 개의 행, 표시 해당 특정 지수에 대한 액세스에 대한 통계. 보다PG_STAT_ALL_INDEXES자세한 내용. |
PG_STAT_SYS_INDEXES | 동일PG_STAT_ALL_INDEXES시스템 테이블의 색인 만 표시됩니다. |
PG_STAT_USER_INDEXES | 동일PG_STAT_ALL_INDEXES사용자 테이블의 색인 만 표시됩니다. |
pg_statio_all_tables | 현재 데이터베이스의 각 테이블마다 1 개의 행, 표시 해당 특정 테이블의 I/O에 대한 통계. 보다pg_statio_all_tables자세한 내용. |
PG_STATIO_SYS_TABLE | 동일pg_statio_all_tables, 시스템 테이블 만 표시됩니다. |
PG_STATIO_USER_TABLE | 동일pg_statio_all_tables, 사용자 테이블 만 표시됩니다. |
PG_STATIO_ALL_INDEXES | 현재 데이터베이스의 각 인덱스마다 1 개의 행, 표시 해당 특정 지수의 I/O에 대한 통계. 보다PG_STATIO_ALL_INDEXES자세한 내용. |
PG_STATIO_SYS_INDEXES | 동일PG_STATIO_ALL_INDEXES, 시스템 테이블의 인덱스 만 표시됩니다. |
PG_STATIO_USER_INDEXES | 동일PG_STATIO_ALL_INDEXES, 사용자 테이블의 색인 만 표시됩니다. |
PG_STATIO_ALL_SEATENCES | 현재 데이터베이스의 각 시퀀스에 대한 하나의 행, 표시 해당 특정 시퀀스의 I/O에 대한 통계. 보다PG_STATIO_ALL_SEATENCES자세한 내용. |
PG_STATIO_SYS_SEVESSENCES | 동일PG_STATIO_ALL_SEATENCES, 시스템 시퀀스 만 표시됩니다. (현재, 시스템 없음 시퀀스가 정의 되므로이보기는 항상 비어 있습니다.) |
PG_STATIO_USER_SEVERENCES | 동일PG_STATIO_ALL_SEVESSENCES, 사용자 시퀀스 만 표시됩니다. |
PG_STAT_USER_FUNTIONS | 각 추적 함수에 대해 하나의 행으로 토토 캔를 보여줍니다 그 기능의 실행. 보다PG_STAT_USER_FUNTIONS자세한 내용. |
PG_STAT_XACT_USER_FUNTIONS | 유사PG_STAT_USER_FUNTIONS, 그러나 현재 거래 중 호출 만 계산합니다 (not아직 포함PG_STAT_USER_FUNTIONS). |
pg_stat_replication | WAL 발신자 프로세스 당 1 행, 토토 캔를 보여줍니다 해당 발신자의 연결된 대기 서버에 대한 복제. 보다pg_stat_replication자세한 내용. |
PG_STAT_DATABASE_CONFLICTS | 데이터베이스 당 하나의 행으로 데이터베이스 전체 토토 캔를 표시합니다 대기 서버의 복구와 충돌하여 쿼리가 취소됩니다. 보다PG_STAT_DATABASE_CONFLICTS자세한 내용. |
인덱스 당 토토 캔는 특히 결정하는 데 유용합니다 어떤 인덱스가 사용되고 얼마나 효과적인지
thePG_STATIO_보기는 주로입니다 버퍼 캐시의 효과를 결정하는 데 유용합니다. 언제 실제 디스크 판독 수는 수보다 훨씬 작습니다. 버퍼 히트, 그런 다음 캐시는 대부분의 읽기 요청을 만족시킵니다. 커널 호출을 호출하지 않고. 그러나 이러한 통계는 그렇지 않습니다 전체 이야기를 제공하십시오 : 그 길로 인해PostgreSQL디스크 I/O 핸들 데이터, 그렇지 않은 데이터 에서PostgreSQL버퍼 캐시 커널의 I/O 캐시에 여전히 존재할 수 있으므로 물리적 읽기가 필요하지 않고도 여전히 가져 오십시오. 사용자 보다 자세한 정보를 얻는 데 관심이 있습니다postgresqlI/O 동작은 사용하는 것이 좋습니다PostgreSQL토토 캔 수집가 통찰력을 허용하는 운영 체제 유틸리티와의 결합 커널의 I/O 처리
표 27-2.pg_stat_activity보기
열 | 타입 | 설명 |
---|---|---|
datid | OID | 데이터베이스의 OID이 백엔드는에 연결되어 있습니다. |
datname | 이름 | 데이터베이스 이름이 백엔드는에 연결되어 있습니다. |
PID | Integer | 이 백엔드의 프로세스 ID |
useysid | OID | 이 백엔드에 로그인 한 사용자의 OID |
useName | 이름 | 이 백엔드에 로그인 한 사용자 이름 |
application_name | 텍스트 | 이 백엔드에 연결된 응용 프로그램 이름 |
client_addr | inet | 이 백엔드에 연결된 클라이언트의 IP 주소. 이 경우 필드는 null이므로 클라이언트가 서버 시스템의 UNIX 소켓 또는 이것이 내부입니다. Autovacuum과 같은 프로세스 |
client_hostname | 텍스트 | Reverse DNS에 의해보고 된대로 Connected Client의 호스트 이름 조회client_addr. 이 필드는 할 것입니다 IP 연결에 대해서만 널이 아니며 만log_hostnameIS 활성화. |
client_port | 정수 | 클라이언트가 통신에 사용하는 TCP 포트 번호 이 백엔드, 또는-1UNIX 소켓 인 경우 사용된 |
backend_start | 시간대가있는 타임 스탬프 | 이 프로세스가 시작된 시간, 즉 클라이언트가 서버에 연결 |
XACT_START | 시간대가있는 타임 스탬프 | 이 프로세스의 현재 트랜잭션이 시작된 시간, 또는 트랜잭션이 활성화되지 않은 경우 NULL. 현재 쿼리가 첫 번째 인 경우 거래 에서이 열은와 같습니다.query_start열. |
query_start | 시간대가있는 타임 스탬프 | 현재 활성 쿼리가 시작된 시간 또는 ifStateActive, 마지막 쿼리가 시작되었을 때 |
State_change | 시간대가있는 타임 스탬프 | 시간 시간State마지막이었습니다 변경된 |
대기 | 부울 | 이 백엔드가 현재 잠금 장치에서 기다리고 있다면. |
State | 텍스트 | 이 백엔드의 현재 전체 상태. 가능한 가치는 다음과 같습니다.
|
쿼리 | 텍스트 | 이 백엔드의 최신 쿼리의 텍스트. 만약에StateisActive이것 필드는 현재 실행중인 쿼리를 보여줍니다. 다른 모든 주에서는 실행 된 마지막 쿼리를 보여줍니다. |
thepg_stat_activity보기가 있습니다 서버 프로세스 당 한 행, 관련 정보를 보여줍니다. 그 과정의 현재 활동.
참고 :the대기andState열은 독립적입니다. 경우 a 백엔드는에 있습니다.ActiveState, OR 할 수 있습니다대기. 주가 인 경우Active및대기사실입니다. 그것은 쿼리가 있음을 의미합니다 실행되었지만 어딘가에 자물쇠에 의해 차단되고 있습니다. 체계.
표 27-3.PG_STAT_BGWRITER보기
열 | 타입 | 설명 |
---|---|---|
Checkpoints_timed | bigint | 수행 된 예정된 체크 포인트 수 |
CheckPoints_Req | bigint | 수행 된 요청 된 검문소 수 |
Checkpoint_write_time | 이중 정밀도 | 파일이 디스크에 기록되는 체크 포인트 처리 밀리 초 |
checkpoint_sync_time | 이중 정밀도 | 파일이 디스크와 동기화되는 체크 포인트 처리 밀리 초 |
buffers_checkpoint | bigint | 체크 포인트 중에 작성된 버퍼 수 |
buffers_clean | bigint | 배경 작성자가 작성한 버퍼 수 |
MaxWritten_clean | bigint | 배경 작가가 청소 스캔을 중지 한 횟수 너무 많은 버퍼를 작성했기 때문에 |
buffers_backend | bigint | 백엔드에 의해 직접 작성된 버퍼 수 |
buffers_backend_fsync | bigint | 백엔드가 자체적으로 실행 해야하는 횟수fsync 전화 (일반적으로 배경 작가
백엔드가 자체 쓰기를 할 때에도 처리합니다) |
buffers_alloc | bigint | 할당 된 버퍼 수 |
stats_reset | 시간대가있는 타임 스탬프 | 이러한 토토 캔가 마지막으로 재설정 된 시간 |
thePG_STAT_BGWRITERView Will 항상 글로벌 데이터를 포함하는 단일 행이 있습니다. 무리.
표 27-4.PG_STAT_DATABASE보기
열 | 타입 | 설명 |
---|---|---|
datid | OID | 데이터베이스의 OID |
datname | 32529_32535 | 이 데이터베이스 이름 |
Numbackends | 정수 | 현재이 데이터베이스에 연결된 백엔드 수. 이것 이보기에서 값 반사를 반영하는 유일한 열입니다. 현재 상태; 다른 모든 열은 누적 된 값을 반환합니다 마지막 재설정 이후 |
xact_commit | bigint | 이 데이터베이스의 트랜잭션 수 헌신적인 |
xact_rollback | bigint | 롤링 된이 데이터베이스의 트랜잭션 수 뒤쪽에 |
blks_read | bigint | 이 데이터베이스에서 읽는 디스크 블록 수 |
blks_hit | bigint | 버퍼에서 이미 발견 된 디스크 블록이 발견되었습니다. 읽기가 필요하지 않도록 캐시 (이것은 히트 만 포함됩니다. 운영 체제의 파일 시스템이 아닌 PostgreSQL 버퍼 캐시 은닉처) |
tup_returned | bigint | 이 데이터베이스의 쿼리에 의해 반환 된 행 수 |
tup_fetched | bigint | 이 데이터베이스의 쿼리에 의해 가져온 행 수 |
tup_inserted | bigint | 이 데이터베이스의 쿼리에 의해 삽입 된 행 수 |
tup_updated | bigint | 이 데이터베이스의 쿼리로 업데이트 된 행 수 |
tup_deleted | bigint | 이 데이터베이스의 쿼리로 삭제 된 행 수 |
갈등 | bigint | 복구 충돌로 인해 취소 된 쿼리 수 이 데이터베이스. (충돌은 대기 서버에서만 발생합니다. 참조PG_STAT_DATABASE_CONFLICTS자세한 내용.) |
temp_files | bigint | 이 데이터베이스의 쿼리에 의해 생성 된 임시 파일 수. 일시적인 이유에 관계없이 모든 임시 파일이 계산됩니다. 파일이 생성되었습니다 (예 : 정렬 또는 해싱).log_temp_files설정. |
temp_bytes | bigint | 쿼리로 임시 파일에 기록 된 총 데이터 금액 이 데이터베이스. 이유에 관계없이 모든 임시 파일은 계산됩니다 임시 파일이 생성되었으며에 관계없이log_temp_files설정. |
교착 상태 | bigint | 이 데이터베이스에서 감지 된 교착 상태 |
blk_read_time | 이중 정밀 | 이것에 의해 백엔드에 의해 데이터 파일 블록을 읽는 데 소요 된 시간 데이터베이스, 밀리 초 |
blk_write_time | 이중 정밀 | 이것에 의해 백엔드에 의해 데이터 파일 블록을 작성하는 데 소요 된 시간 데이터베이스, 밀리 초 |
stats_reset | 시간대가있는 타임 스탬프 | 이러한 토토 캔가 마지막으로 재설정 된 시간 |
thePG_STAT_DATABASE보기 클러스터에 각 데이터베이스마다 하나의 행을 포함하여 데이터베이스 전체 통계.
표 27-5.pg_stat_all_tables보기
열 | 타입 | 설명 |
---|---|---|
Relid | OID | 테이블의 OID |
Schemaname | 이름 | 이 테이블에있는 스키마 이름 |
Relname | 이름 | 이 테이블의 이름 |
SEQ_SCAN | bigint | 이 표에서 시작된 순차적 스캔 수 |
seq_tup_read | bigint | 순차적 스캔으로 가져온 라이브 행 수 |
idx_scan | bigint | 이 표에서 시작된 인덱스 스캔 수 |
idx_tup_fetch | bigint | 인덱스 스캔에 의해 가져온 라이브 행 수 |
n_tup_ins | bigint | 삽입 된 행 수 |
N_TUP_UPD | bigint | 행 수 업데이트 |
n_tup_del | bigint | 삭제 된 행 수 |
N_TUP_HOT_UPD | bigint | 행 수 핫 업데이트 (즉, 별도의 인덱스 업데이트 없음 필수의) |
n_live_tup | bigint | 예상 라이브 행 수 |
n_dead_tup | bigint | 죽은 줄의 추정 수 |
last_vacuum | 시간대가있는 타임 스탬프 | 이 테이블이 수동으로 진공 청소 된 마지막 시간 ( 계산진공 Full) |
last_autovacuum | 시간대가있는 타임 스탬프 | 이 테이블이 Autovacuum에 의해 청소 한 마지막 시간 악마 |
last_analyze | 시간대가있는 타임 스탬프 | 이 테이블이 수동으로 분석 된 마지막 시간 |
last_autoanalyze | 시간대가있는 타임 스탬프 | 이 테이블이 Autovacuum에 의해 분석 된 마지막 시간 악마 |
Vacuum_Count | bigint | 이 테이블이 수동으로 진공 청소기가 됨 ( 계산진공 Full) |
autovacuum_count | bigint | 이 테이블이 Autovacuum에 의해 진공 청소기를 청소했습니다. 악마 |
Analyze_Count | bigint | 이 테이블이 수동으로 분석 된 횟수 |
autoanalyze_count | bigint | 이 테이블이 Autovacuum에 의해 분석되었습니다. 악마 |
thepg_stat_all_tablesView Will 현재 데이터베이스에 각 테이블마다 하나의 행을 포함합니다 (포함 토스트 테이블), 해당 특정에 대한 액세스에 대한 통계를 보여줍니다 테이블. 그만큼PG_STAT_USER_TABLE및PG_STAT_SYS_TABLE보기가 포함되어 있습니다 동일한 정보이지만 사용자 및 시스템 테이블 만 표시하도록 필터링되었습니다. 각기.
표 27-6.PG_STAT_ALL_INDEXES보기
열 | 타입 | 설명 |
---|---|---|
릴리드 | OID | 이 색인에 대한 테이블의 OID |
IndexRelid | OID | 이 색인의 OID |
Schemaname | 이름 | 스키마 이름이 색인이 |
Relname | 이름 | 이 인덱스의 테이블 이름 |
indexRelName | 이름 | 이 색인의 이름 |
idx_scan | bigint | 이 인덱스에서 시작된 인덱스 스캔 수 |
idx_tup_read | bigint | 이 인덱스에서 스캔에 의해 반환 된 인덱스 항목 수 |
idx_tup_fetch | bigint | 간단한 인덱스 스캔으로 가져온 라이브 테이블 행 수 이 색인 |
thePG_STAT_ALL_INDEXES보기 현재 데이터베이스에 각 인덱스에 대해 하나의 행을 포함하여 해당 특정 지수에 대한 액세스에 대한 통계. 그만큼PG_STAT_USER_INDEXESandPG_STAT_SYS_INDEXES보기에는 동일합니다 정보이지만 사용자 및 시스템 인덱스 만 표시하도록 필터링되었습니다. 각기.
인덱스는 간단한 인덱스 스캔 또는를 통해 사용할 수 있습니다."비트 맵"인덱스 스캔. 비트 맵 스캔에서 여러 인덱스의 출력은 또는 또는 또는 규칙을 통해 결합 할 수 있습니다. 따라서 개별 힙 행 페치를 연관시키는 것은 어렵습니다. 비트 맵 스캔을 사용하는 경우 특정 인덱스. 따라서 비트 맵 스캔은를 증가시킵니다PG_STAT_ALL_INDEXES.idx_tup_read사용하는 인덱스의 카운트 (s), 그리고 그것은를 증가시킵니다.pg_stat_all_tables.idx_tup_fetch테이블을 계산하지만 그렇습니다 영향을 미치지 않음PG_STAT_ALL_INDEXES.idx_tup_fetch.
참고 :theidx_tup_read및idx_tup_fetch카운트는 다를 수 있습니다 비트 맵 스캔을 사용하지 않아도idx_tup_read검색 된 인덱스 항목 카운트 인덱스 whileidx_tup_fetch카운트 테이블에서 라이브 행이 가져 왔습니다. 후자는 더 적을 것입니다 사망하거나 제하지 않은 행은 인덱스를 사용하여 가져 오거나 인덱스 전용 스캔을 통해 모든 힙 가져 오기를 피합니다.
표 27-7.pg_statio_all_tables보기
열 | 타입 | 설명 |
---|---|---|
릴리드 | OID | 테이블의 OID |
Schemaname | 이름 | 이 테이블이있는 스키마의 이름 |
Relname | 이름 | 이 테이블의 이름 |
Heap_Blks_Read | bigint | 이 테이블에서 읽은 디스크 블록 수 |
heap_blks_hit | bigint | 이 테이블의 버퍼 히트 수 |
idx_blks_read | bigint | 이 테이블의 모든 인덱스에서 읽은 디스크 블록 수 |
idx_blks_hit | bigint | 이 테이블의 모든 인덱스에서 버퍼 히트 횟수 |
TOAST_BLKS_READ | bigint | 이 테이블의 토스트 테이블에서 읽은 디스크 블록 수 (if 어느) |
TOAST_BLKS_HIT | bigint | 이 테이블의 토스트 테이블에서 버퍼 히트 수 (있는 경우) |
TIDX_BLKS_READ | bigint | 이 테이블의 토스트 테이블 인덱스에서 읽은 디스크 블록 수 (있는 경우) |
TIDX_BLKS_HIT | bigint | 이 테이블의 토스트 테이블 인덱스의 버퍼 히트 수 (if 어느) |
thepg_statio_all_tables보기 현재 데이터베이스에 각 테이블마다 하나의 행을 포함합니다 (포함 토스트 테이블), 해당 특정 테이블의 I/O에 대한 통계를 보여줍니다. 그만큼pg_statio_user_tablesandPG_STATIO_SYS_TABLE보기가 포함되어 있습니다 동일한 정보이지만 사용자 및 시스템 테이블 만 표시하도록 필터링되었습니다. 각기.
표 27-8.PG_STATIO_ALL_INDEXES보기
열 | 타입 | 설명 |
---|---|---|
릴리드 | OID | 이 색인에 대한 테이블의 OID |
IndexRelid | OID | 이 색인의 OID |
Schemaname | 이름 | 스키마 이름이 색인이 |
Relname | 이름 | 이 색인의 테이블 이름 |
indexRelName | 이름 | 이 색인의 이름 |
idx_blks_read | bigint | 이 인덱스에서 읽은 디스크 블록 수 |
idx_blks_hit | bigint | 이 색인의 버퍼 히트 수 |
thePG_STATIO_ALL_INDEXESView Will 현재 데이터베이스에 각 인덱스에 대해 하나의 행을 포함하여 해당 특정 지수의 I/O에 대한 통계. 그만큼PG_STATIO_USER_INDEXESandPG_STATIO_SYS_INDEXES보기에는 동일합니다 정보이지만 사용자 및 시스템 인덱스 만 표시하도록 필터링되었습니다. 각기.
표 27-9.PG_STATIO_ALL_SEVESSENCES보기
열 | 타입 | 설명 |
---|---|---|
Relid | OID | 시퀀스의 OID |
Schemaname | 이름 | 스키마의 이름이 시퀀스는 |
Relname | 이름 | 이 시퀀스의 이름 |
blks_read | bigint | 이 시퀀스에서 읽은 디스크 블록 수 |
blks_hit | bigint | 이 시퀀스의 버퍼 히트 수 |
thePG_STATIO_ALL_SEVESSENCES보기 현재 데이터베이스의 각 시퀀스에 대해 하나의 행이 포함되며 해당 특정 시퀀스에서 I/O에 대한 통계 표시.
표 27-10.PG_STAT_USER_FUNTIONS보기
열 | 타입 | 설명 |
---|---|---|
funcid | OID | 함수의 OID |
Schemaname | 이름 | 스키마 이름이 함수는 |
funcName | 이름 | 이 기능의 이름 |
전화 | bigint | 이 기능이 호출 된 횟수 |
Total_Time | 이중 정밀 | 이 기능 및 기타 모든 기능에 소요되는 총 시간 그것에 의해, 밀리 초로 |
self_time | 이중 정밀 | 이 기능 자체에서 보낸 총 시간은 다른 것을 포함하지 않습니다. 밀리 초로 호출되는 함수 |
thePG_STAT_USER_FINCTIONS보기 각 추적 기능에 대해 한 행을 포함하여 통계를 표시합니다. 그 기능의 실행. 그만큼Track_Functions매개 변수 제어 정확히 어떤 함수가 추적되는지
표 27-11.pg_stat_replication보기
열 | type | 설명 |
---|---|---|
PID | 정수 | WAL 발신자 프로세스의 프로세스 ID |
useysid | OID | 이 WAL 발신자 프로세스에 로그인 한 사용자의 OID |
useName | 이름 | 이 WAL 발신자 프로세스에 로그인 한 사용자 이름 |
Application_Name | 텍스트 | 이 WAL에 연결된 응용 프로그램 이름 보내는 사람 |
client_addr | inet | 이 WAL 발신자에 연결된 클라이언트의 IP 주소. 이 경우 필드는 NULL이며 클라이언트가 UNIX를 통해 연결되어 있음을 나타냅니다. 서버 시스템의 소켓. |
client_hostname | 텍스트 | Reverse DNS에 의해보고 된대로 Connected Client의 호스트 이름 조회client_addr. 이 필드는 할 것입니다 IP 연결에 대해서만 널이 아니며 만log_hostnameIS 활성화. |
client_port | Integer | 클라이언트가 통신에 사용하는 TCP 포트 번호 이 WAL 발신자, 또는-1UNIX 소켓 인 경우 사용된 |
backend_start | 시간대가있는 타임 스탬프 | 이 프로세스가 시작된 시간, 즉 클라이언트시기 이 WAL 발신자에 연결 |
State | 텍스트 | 현재 Wal Sender State |
sent_location | 텍스트 | 이 연결에서 전송 된 마지막 트랜잭션 로그 위치 |
쓰기 _location | 텍스트 | 이 대기로 디스크에 기록 된 마지막 트랜잭션 로그 위치 섬기는 사람 |
flush_location | 텍스트 | 이 대기로 디스크로 플러시 된 마지막 트랜잭션 로그 위치 섬기는 사람 |
Replay_Location | 텍스트 | 마지막 트랜잭션 로그 위치가 데이터베이스 켜기로 재생되었습니다 이 대기 서버 |
sync_priority | 정수 | 이 대기 서버의 우선 순위는 동기 대기 |
sync_state | 텍스트 | 이 대기 서버의 동기 상태 |
thepg_stat_replicationView Will WAL 발신자 프로세스 당 한 행을 포함하여 통계를 보여줍니다. 해당 발신자의 연결된 대기 서버에 대한 복제. 오직 직접 연결된 대기는 나열됩니다. 정보가 없습니다 다운 스트림 대기 서버 정보.
표 27-12.PG_STAT_DATABASE_CONFLICTS보기
열 | 타입 | 설명 |
---|---|---|
datid | OID | 데이터베이스의 OID |
datname | 이름 | 이 데이터베이스 이름 |
cl_tablespace | bigint | 이 데이터베이스의 쿼리 수는 취소 된 것으로 취소되었습니다. 테이블 스페이스를 삭제하려면 |
cl_lock | bigint | 이 데이터베이스의 쿼리 수는 취소 된 것으로 취소되었습니다. 시간 초과 잠금 |
COLL_SNAPSHOT | bigint | 이 데이터베이스의 쿼리 수는 취소 된 것으로 오래된 스냅 샷 |
COLL_BUFFERPIN | bigint | 이 데이터베이스의 쿼리 수는 취소 된 것으로 취소되었습니다. 고정 된 버퍼 |
cl_deadlock | bigint | 이 데이터베이스의 쿼리 수는 취소 된 것으로 취소되었습니다. 교착 상태 |
thePG_STAT_DATABASE_CONFLICTS보기 데이터베이스 당 하나의 행이 포함되어 데이터베이스 전체 통계가 표시됩니다 복구와의 충돌로 인해 발생하는 쿼리 취소 대기 서버. 이보기에는 대기에 대한 정보 만 포함됩니다 마스터 서버에서 충돌이 발생하지 않기 때문에 서버.
통계를 보는 다른 방법은 글을 쓰면 설정할 수 있습니다. 동일한 기본 통계 액세스 기능을 사용하는 쿼리 위에 표시된 표준보기에 사용됩니다. 와 같은 자세한 내용은 함수의 이름은 표준보기의 정의를 참조하십시오. (예를 들어,PSQL할 수 있습니다 문제\ d+ pg_stat_activity.) 액세스 -데이터베이스 통계에 대한 기능은 데이터베이스 OID를 보고 할 데이터베이스를 식별하는 인수. 테이블 당 및 인덱스 당 기능은 테이블 또는 인덱스 OID를 취합니다. 기능 기능 당 통계는 기능 OID를 취합니다. 테이블 만, 현재 데이터베이스의 인덱스 및 기능은 다음과 같이 볼 수 있습니다. 이 기능.
토토 캔 수집과 관련된 추가 기능이 나열되어 있습니다 안에테이블 27-13.
표 27-13. 추가 토토 캔 기능
기능 | 반환 유형 | 설명 |
---|---|---|
pg_backend_pid () |
Integer | 서버 프로세스의 프로세스 ID는 전류를 처리합니다 세션 |
pg_stat_get_activity (Integer) |
Setof Record | 백엔드에 대한 정보 기록을 반환합니다. 지정된 PID 또는 시스템의 각 활성 백엔드에 대해 하나의 레코드 만약에NULL지정되어 있습니다. 필드가 돌아 왔습니다 의 하위 집합입니다.pg_stat_activity보기 |
PG_STAT_CLEAR_SNAPSHOT () |
void | 현재 통계를 버립니다 |
PG_STAT_RESET () |
void | 현재 데이터베이스의 모든 통계 카운터를 0으로 재설정합니다. (수퍼 유저 권한 필요) |
PG_STAT_RESET_SHARED (텍스트) |
void | 일부 클러스터 전체 통계 카운터를 0으로 재설정하십시오 인수에 대해 (슈퍼 서서 권한이 필요하다). 부름PG_STAT_RESET_SHARD ( 'BGWRITER')모든 것을 0으로 제로 할 것입니다 에 표시된 카운터PG_STAT_BGWRITER보기 |
pg_stat_reset_single_table_counters (OID) |
void | 현재의 단일 테이블 또는 인덱스에 대한 통계 재설정 Database to Zero (Superuser 권한 필요) |
pg_stat_reset_single_function_counters (OID) |
void | 현재 데이터베이스의 단일 함수에 대한 통계 재설정 Zero (슈퍼업자 권한 필요) |
pg_stat_get_activity
,
의 기본 기능pg_stat_activity보기, 레코드 세트를 반환합니다
각 백엔드에 대한 모든 정보를 포함합니다
프로세스. 때로는
이 정보의 하위 집합. 그러한 경우, 오래된 세트
백크 당 통계 액세스 기능을 사용할 수 있습니다. 이것들입니다
표시테이블
27-14. 이러한 액세스 기능은 백엔드 ID 번호를 사용합니다
현재 활성 백엔드의 수에서 현재까지 다양합니다. 그만큼
기능pg_stat_get_backend_idset
활성 각각의 활성마다 하나의 행을 생성하는 편리한 방법을 제공합니다.
이러한 기능을 호출하기위한 백엔드. 예를 들어,를 보여려면PIDs 및 모든의 현재 쿼리
백엔드 :
PG_STAT_GET_BACKEND_PID (S.BACKENDID)를 PID로 선택하십시오. 쿼리로서 pg_stat_get_backend_activity (s.backendid) from (select pg_stat_get_backend_idset () as backendid)로 s;
표 27-14. 백 커드 당 통계 기능
function | 반환 유형 | 설명 |
---|---|---|
pg_stat_get_backend_idset () |
정수 세트 | 현재 활성 백엔드 ID 번호 세트 (1에서 활성 백엔드 수) |
pg_stat_get_backend_activity (정수) |
텍스트 | 이 백엔드의 가장 최근 쿼리 텍스트 |
PG_STAT_GET_BACKEND_ACTIVITY_START (Integer) |
시간대가있는 타임 스탬프 | 가장 최근의 쿼리가 시작된 시간 |
pg_stat_get_backend_client_addr (정수) |
inet | 이 백엔드에 연결된 클라이언트의 IP 주소 |
pg_stat_get_backend_client_port (정수) |
Integer | 클라이언트가 커뮤니케이션에 사용하는 TCP 포트 번호 |
pg_stat_get_backend_dbid (정수) |
OID | 데이터베이스의 OID이 백엔드는에 연결되어 있습니다. |
PG_STAT_GET_BACKEND_PID (Integer) |
Integer | 이 백엔드의 프로세스 ID |
PG_STAT_GET_BACKEND_START (Integer) |
시간대가있는 타임 스탬프 | 이 과정이 시작된 시간 |
PG_STAT_GET_BACKEND_USERID (Integer) |
OID | 이 백엔드에 로그인 한 사용자의 OID |
pg_stat_get_backend_waiting (정수) |
부울 | 이 백엔드가 현재 잠금을 기다리고 있다면 |
PG_STAT_GET_BACKEND_XACT_START (Integer) |
시간대가있는 타임 스탬프 | 현재 거래가 시작된 시간 |
이전 | 배트맨 토토 : 문서 : 9.3 : 배트맨 토토 9.3.25 문서화 | 다음 |
표준 유닉스 도구 | up | 보기 잠금 |