이 문서는 지원되지 않는 버전의 PostgreSQL을위한 것입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다PostgreSQL : 문서 : 17 : 9.28. 시스템 관리 스포츠 토토 사이트버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

9.26. 시스템 관리 스포츠 토토

이 섹션에 설명 된 스포츠 토토은 A를 제어하고 모니터링하는 데 사용됩니다postgresql설치.

9.26.1. 구성 설정 스포츠 토토

표 9-66쿼리 및 변경 런타임 구성 매개 변수에 사용 가능한 스포츠 토토을 표시합니다.

표 9-66. 구성 설정 스포츠 토토

이름 반환 유형 설명
current_setting (setting_name) 텍스트 설정의 현재 가치 가져 오기
set_config (setting_name, new_value, is_local) 텍스트 매개 변수 설정 및 새 값을 반환

함수current_setting설정의 현재 값을 생성setting_name. 그것은에 해당합니다.SQL명령show. 예 :

select current_setting ( 'datestyle');

 current_setting
------------------
 ISO, MDY
(1 행)

set_config매개 변수 설정setting_nametonew_value. 만약에is_localistrue, 새 값은 현재 거래에만 적용됩니다. 새 값이 현재 세션에 신청하려면 스포츠 토토거짓대신. 함수는 SQL 명령에 해당합니다SET. 예 :

SELECT SET_CONFIG ( 'log_statement_stats', 'off', false);

 set_config
------------
 끄다
(1 행)

9.26.2. 서버 신호 스포츠 토토

표 9-67다른 서버 프로세스로 제어 신호를 전송합니다. 이러한 스포츠 토토의 사용은 일반적으로 예외가있는 슈퍼업자로 제한됩니다.

표 9-67. 서버 신호 스포츠 토토

이름 반환 유형 설명
pg_cancel_backend (PID int) 부울 백엔드의 현재 쿼리를 취소합니다. 호출 역할이 백엔드가 취소되는 역할의 구성원 인 경우에도 허용되지만 슈퍼 스포츠 토토자 만 슈퍼업자 백엔드를 취소 할 수 있습니다.
pg_reload_conf () 부울 서버 프로세스가 구성 파일을 다시로드하도록 원인
pg_rotate_logfile () 부울 서버의 로그 파일 회전
pg_terminate_backend (PID int) 부울 백엔드 종료. 호출 역할이 백엔드가 종료되는 역할의 구성원 인 경우에도 허용되지만 슈퍼 스포츠 토토자 만 슈퍼 스포츠 토토자 백엔드를 종료 할 수 있습니다.

이러한 각 함수가 반환true성공하고거짓그렇지 않으면.

​​pg_cancel_backendandpg_terminate_backend신호 전송 (Sigint또는Sigterm각각) 프로세스 ID로 식별 된 백엔드 프로세스. 활성 백엔드의 프로세스 ID는에서 찾을 수 있습니다.PID열의 열pg_stat_activity보기 또는 목록Postgres서버의 프로세스 (스포츠 토토PSon unix 또는작업 스포츠 토토자onWindows). 활성 백엔드의 역할은에서 찾을 수 있습니다.usename열의 열pg_stat_activity보기

pg_reload_confa 보내기Sighup서버에 신호를 보내 모든 서버 프로세스에서 구성 파일을 다시로드하게합니다.

pg_rotate_logfile로그 파일 스포츠 토토자가 새 출력 파일로 즉시 전환하도록 신호를 보냅니다. 로그 파일 스포츠 토토자 하위 프로세스가 없기 때문에 내장 로그 수집기가 실행 중일 때만 작동합니다.

9.26.3. 백업 제어 스포츠 토토

표 9-68온라인 백업을 지원합니다. 이러한 스포츠 토토은 복구 중에 실행할 수 없습니다 (제외pg_is_in_backup, pg_backup_start_timeandpg_xlog_location_diff).

표 9-68. 백업 제어 스포츠 토토

이름 반환 유형 설명
pg_create_restore_point (이름 텍스트) PG_LSN 복원을 수행하기위한 명명 된 지점을 만듭니다 (슈퍼업자로 제한)
pg_current_xlog_insert_location () PG_LSN 현재 트랜잭션 가져 오기 로그 삽입
pg_current_xlog_location () PG_LSN 현재 트랜잭션 로그 쓰기 위치
pg_start_backup (레이블 텍스트[, 빠른 부울]) PG_LSN 온라인 백업 수행 준비 (슈퍼 서서 또는 복제 역할로 제한)
pg_stop_backup () PG_LSN 온라인 백업 수행 (수퍼 유저 또는 복제 역할로 제한)
pg_is_in_backup () bool 온라인 독점 백업이 아직 진행중인 경우 True.
pg_backup_start_time () 시간대가있는 타임 스탬프 온라인 독점 백업의 시작 시간을 얻으십시오.
pg_switch_xlog () PG_LSN 새 트랜잭션 로그 파일로 전환 (슈퍼 서서로 제한)
pg_xlogfile_name (위치 PG_LSN) 텍스트 트랜잭션 로그 위치를 파일 이름으로 변환
pg_xlogfile_name_offset (위치 PG_LSN) 텍스트, Integer 트랜잭션 로그 위치를 파일 이름 및 소수 바이트 오프셋으로 변환
pg_xlog_location_diff (위치 PG_LSN, 위치 PG_LSN) 숫자 두 트랜잭션 로그 위치의 차이를 계산

PG_START_BACKUP백업에 대한 임의의 사용자 정의 레이블을 허용합니다. (일반적으로 이것은 백업 덤프 파일이 저장 될 이름입니다.) 함수는 백업 레이블 파일 (을 씁니다.backup_label) 그리고 링크가있는 경우PG_TBLSPC/디렉토리, 테이블 스페이스 맵 파일 (TableSpace_map) 데이터베이스 클러스터의 데이터 디렉토리로 체크 포인트를 수행 한 다음 백업의 시작 트랜잭션 로그 위치를 텍스트로 반환합니다. 사용자는이 결과 값을 무시할 수 있지만 유용한 경우에 제공됩니다.

postgres =# select pg_start_backup ( 'label_goes_here');
 pg_start_backup
------------------
 0/D4445B8
(1 행)

유형의 선택적 두 번째 매개 변수가 있습니다부울. 만약에true, 실행을 지정PG_START_BACKUP가능한 빨리. 이것은 즉각적인 체크 포인트를 강요하여 I/O 작업이 급등하여 동시에 실행되는 쿼리를 느리게합니다.

PG_STOP_BACKUP레이블 파일을 제거하고 존재하는 경우TableSpace_map파일에 의해 생성 된 파일PG_START_BACKUP, 트랜잭션 로그 아카이브 영역에서 백업 기록 파일을 만듭니다. 히스토리 파일에는에 주어진 레이블이 포함되어 있습니다.PG_START_BACKUP, 백업을위한 시작 및 종료 트랜잭션 로그 위치 및 백업의 시작 및 종료 시간. 반환 값은 백업의 종료 트랜잭션 로그 위치입니다 (다시 무시할 수 있음). 결말 위치를 기록한 후, 현재 트랜잭션 로그 삽입 지점이 다음 트랜잭션 로그 파일로 자동으로 전환되므로 종료 트랜잭션 로그 파일을 즉시 보관하여 백업을 완료 할 수 있습니다..

PG_SWITCH_XLOG다음 트랜잭션 로그 파일로 이동하여 현재 파일을 보관할 수 있습니다 (연속 아카이브를 사용한다고 가정). 반환 값은 방금 완성 된 트랜잭션 로그 파일 내에서 종료 트랜잭션 로그 위치 + 1입니다. 마지막 트랜잭션 로그 스위치 이후 트랜잭션 로그 활동이없는 경우PG_SWITCH_XLOG현재 사용중인 트랜잭션 로그 파일의 시작 위치를 아무것도하지 않고 반환합니다.

pg_create_restore_point복구 대상으로 사용할 수있는 이름의 트랜잭션 로그 레코드를 작성하고 해당 트랜잭션 로그 위치를 반환합니다. 주어진 이름은와 함께 스포츠 토토할 수 있습니다.복구 _target_name어떤 복구가 진행될 지 지점을 지정합니다. 동일한 이름의 여러 복원 지점을 생성하지 마십시오. 회복이 회복 대상과 일치하는 첫 번째 이름에서 회복이 중지되므로

pg_current_xlog_location현재 트랜잭션 로그 쓰기 위치를 위의 함수에서 사용하는 것과 동일한 형식으로 표시합니다. 비슷하게,pg_current_xlog_insert_location현재 트랜잭션 로그 삽입 지점을 표시합니다. 삽입 지점은입니다."논리"트랜잭션 로그의 종료 임의의 순간, 쓰기 위치는 서버의 내부 버퍼에서 실제로 작성된 내용의 끝입니다. 쓰기 위치는 서버 외부에서 검사 할 수있는 것의 끝이며, 일반적으로 부분 완료 트랜잭션 로그 파일을 보관하는 데 관심이있는 경우 일반적으로 원하는 것입니다. 삽입 지점은 주로 서버 디버깅 목적으로 제공됩니다. 이들은 모두 읽기 전용 작업이며 슈퍼 사용자 권한이 필요하지 않습니다.

스포츠 토토할 수 있습니다pg_xlogfile_name_offset상기 함수의 결과에서 해당 트랜잭션 로그 파일 이름과 바이트 오프셋을 추출합니다. 예를 들어:

postgres =# select * from pg_xlogfile_name_offset (pg_stop_backup ());
        file_name | file_offset 
---------------------------------------------
 00000001000000000000000D |     4039624
(1 행)

마찬가지로pg_xlogfile_name트랜잭션 로그 파일 이름 만 추출합니다. 주어진 트랜잭션 로그 위치가 트랜잭션 로그 파일 경계에있는 경우이 두 스포츠 토토 모두 이전 트랜잭션 로그 파일의 이름을 반환합니다. 이전 파일은 현재 보관 해야하는 마지막 파일이기 때문에 트랜잭션 로그 아카이빙 동작을 관리하기위한 원하는 동작입니다..

pg_xlog_location_diff두 트랜잭션 로그 위치 사이의 바이트 차이를 계산합니다. 와 함께 스포츠 토토할 수 있습니다.pg_stat_replication또는 일부 스포츠 토토에 표시표 9-68복제 지연을 얻으려면

이러한 스포츠 토토의 적절한 사용에 대한 자세한 내용은 참조토토 사이트 순위 PostgreSQL : 문서 : 9.5 : 연속 보관 및 시점 복구 (PITR).

9.26.4. 복구 제어 스포츠 토토

표 9-69대기 상태의 현재 상태에 대한 정보를 제공합니다. 이러한 스포츠 토토은 회복 중 및 정상 달리기에서 실행될 수 있습니다.

표 9-69. 복구 정보 스포츠 토토

이름 반환 유형 설명
PG_IS_IN_RECOVERY () bool 회복이 아직 진행중인 경우 진실.
pg_last_xlog_receive_location () PG_LSN 스트리밍 복제를 통해 수신 및 디스크에 동기화 된 마지막 트랜잭션 로그 위치 가져 오기. 스트리밍 복제가 진행되고 있지만 단조로 증가합니다. 복구가 완료되면 복구 중에 수신 된 마지막 WAL 레코드의 값에 따라 정적으로 유지됩니다. 스트리밍 복제가 비활성화되거나 아직 시작되지 않은 경우 함수는 NULL을 반환합니다.
pg_last_xlog_replay_location () PG_LSN 복구 중에 마지막 트랜잭션 로그 위치가 재생됩니다. 회복이 여전히 진행 중이면 단조로 증가합니다. 복구가 완료되면이 값은 해당 복구 중에 적용된 마지막 WAL 레코드의 값으로 정적으로 유지됩니다. 복구없이 서버가 정상적으로 시작되면 함수는 NULL을 반환합니다.
PG_LAST_XACT_REPLAY_TIMESTAMP () 시간대가있는 타임 스탬프 복구 중에 마지막 트랜잭션을 재생 한 마지막 트랜잭션의 타임 스탬프를 얻으십시오. 해당 거래에 대한 Commit 또는 Abort WAL 레코드가 기본에서 생성 된 시간입니다. 복구 중에 트랜잭션이 재생되지 않은 경우이 스포츠 토토은 NULL을 반환합니다. 그렇지 않으면 회복이 여전히 진행 중이면 단조로 증가합니다. 복구가 완료되면이 값은 해당 복구 중에 적용된 마지막 트랜잭션의 값에서 정적으로 유지됩니다. 복구없이 서버가 정상적으로 시작되면 함수는 NULL을 반환합니다.

표 9-70회복 진행 상황을 제어합니다. 이러한 스포츠 토토은 회복 중에 만 실행될 수 있습니다.

표 9-70. 복구 제어 스포츠 토토

이름 반환 유형 설명
PG_IS_XLOG_REPLAY_PAUSD () bool 회복이 일시 중지 된 경우 진실.
PG_XLOG_REPLAY_PAUSE () void 즉시 회복을 일시 중지합니다 (슈퍼업자로 제한).
pg_xlog_replay_resume () void 일시 중지 된 경우 복구를 다시 시작합니다 (슈퍼 서서로 제한).

복구가 일시 중지되는 동안 더 이상 데이터베이스 변경 사항이 적용되지 않습니다. 핫 스탠드에서 모든 새로운 쿼리가 데이터베이스의 동일한 일관된 스냅 샷을 볼 수 있고 복구가 재개 될 때까지 더 이상의 쿼리 충돌이 생성되지 않습니다.

스트리밍 복제가 비활성화되면 일시 정지 상태는 문제없이 무기한으로 계속 될 수 있습니다. 스트리밍 복제가 진행 중이지만 WAL 레코드는 계속 수신되며, 이는 일시 정지 기간, 월 생성 속도 및 스포츠 토토 가능한 디스크 공간에 따라 스포츠 토토 가능한 디스크 공간을 채우게됩니다..

9.26.5. 스냅 샷 동기화 함수

PostgreSQL데이터베이스 세션이 스냅 샷을 동기화 할 수 있습니다. 에이스냅 샷스냅 샷을 사용하는 트랜잭션에 표시되는 데이터를 결정합니다. 둘 이상의 세션이 데이터베이스에서 동일한 컨텐츠를 볼 필요가있는 경우 동기화 된 스냅 샷이 필요합니다. 두 세션이 트랜잭션을 독립적으로 시작하는 경우, 일부 세 번째 트랜잭션이 둘의 실행 사이에 항상 도움이 될 가능성이 있습니다트랜잭션 시작명령, 한 세션은 해당 거래의 영향을보고 다른 세션은 그렇지 않습니다..

이 문제를 해결하려면PostgreSQL거래를 허용Export사용중인 스냅 샷. 수출 거래가 계속 열려있는 한 다른 거래는가져 오기스냅 샷이므로 첫 번째 트랜잭션에서 볼 수있는 데이터베이스와 정확히 동일한보기를 보장합니다. 그러나 이러한 트랜잭션 중 하나에 의해 이루어진 데이터베이스 변경은 커밋되지 않은 트랜잭션의 변경 사항과 마찬가지로 다른 트랜잭션에 보이지 않습니다. 따라서 트랜잭션은 기존 데이터와 관련하여 동기화되지만 정상적으로 변화에 대해 행동합니다.

스냅 샷은PG_EXPORT_SNAPSHOT함수, 표시표 9-71및로 가져 오기PostgreSQL : 문서 : 9.5 : 스포츠 토토 결과 설정명령.

표 9-71. 스냅 샷 동기화 함수

이름 반환 유형 설명
pg_export_snapshot () 텍스트 현재 스냅 샷을 저장하고 식별자를 반환

함수pg_export_snapshot현재 스냅 샷을 저장하고 a를 반환합니다.텍스트문자열 스냅 샷을 식별합니다. 이 문자열은 스냅 샷을 가져 오려는 클라이언트에게 (데이터베이스 외부) 전달되어야합니다. 스냅 샷은 거래가 끝날 때까지만 가져올 수 있습니다. 거래는 필요한 경우 둘 이상의 스냅 샷을 내보낼 수 있습니다. 그렇게하는 것은에서만 유용합니다.Commited 읽기그 이후의 거래반복 가능한 읽기더 높은 격리 수준에서 트랜잭션은 평생 동안 동일한 스냅 샷을 사용합니다. 트랜잭션이 스냅 샷을 내보내면로 준비 할 수 없습니다.PostgreSQL : 문서 : 9.5 : 거래 토토 베이.

참조PostgreSQL : 문서 : 9.5 : 스포츠 토토 결과 설정내보내기 스냅 샷 사용 방법에 대한 자세한 내용.

9.26.6. 복제 스포츠 토토

표 9-72복제 스포츠 토토을 제어하고 상호 작용하기위한 것입니다. 보다섹션 25.2.5, ​​섹션 25.2.643스포츠 토토 사이트19기본 스포츠 토토에 대한 정보. 복제 원점에 대한 스포츠 토토 사용은 슈퍼 사용자로 제한됩니다. 복제 슬롯에 스포츠 토토을 사용하는 스포츠 토토은 슈퍼업자 및 사용자에게 제한됩니다복제특권.

이러한 스포츠 토토 중 많은 부분이 복제 프로토콜에 동등한 명령을 가지고 있습니다. 보다PostgreSQL : 문서 : 9.5 : 토토 베이 복제 프로토콜.

|섹션 9.26.3, 섹션 9.26.4섹션 9.26.5복제와 관련이 있습니다.

표 9-72. 복제SQL스포츠 토토

function 반환 유형 설명
pg_create_physical_replication_slot (slot_name 이름) (SLOT_NAME 이름, xlog_position PG_LSN) 새 물리적 복제 슬롯을 만듭니다SLOT_NAME. 물리적 슬롯의 스트리밍 변경은 스트리밍 반복 프로토콜에서만 가능합니다 - 참조PostgreSQL : 문서 : 9.5 : 토토 베이 복제 프로토콜. 복제 프로토콜 명령에 해당create_replication_slot ... 물리적.
PG_DROP_REPLICATION_SLOT (SLOT_NAME 이름) void 물리적 또는 논리적 복제 슬롯을 삭제합니다.SLOT_NAME. 복제 프로토콜 명령과 동일Drop_Replication_SLOT.
pg_create_logical_replication_slot (SLOT_NAME 이름, 플러그인 이름) (slot_name 이름, xlog_position PG_LSN) 새로운 논리적 (디코딩) 복제 슬롯을 만듭니다slot_name출력 플러그인 사용플러그인. 이 스포츠 토토에 대한 호출은 복제 프로토콜 명령과 동일한 효과를냅니다.create_replication_slot ... logical.
PG_LOGICAL_SLOT_GET_CHANGES (SLOT_NAME 이름, upto_lsn PG_LSN, upto_nchanges int, variadic옵션 텍스트 []) (위치 PG_LSN, xid xid, 데이터 텍스트) 슬롯의 변경 사항을 반환slot_name, 변화가 마지막으로 소비 된 시점부터 시작합니다. 만약에UPTO_LSNandupto_nchangesNULL, WAL이 끝날 때까지 논리적 디코딩이 계속됩니다. 만약에upto_lsn는 널이없고, 디코딩에는 지정된 LSN 이전에 저지른 거래 만 포함됩니다. 만약에upto_nchanges는 널이없고 디코딩으로 생성 된 행의 수가 지정된 값을 초과 할 때 디코딩이 중지됩니다. 그러나이 한계는 각각의 새로운 트랜잭션 커밋을 해독 할 때 생성 된 행을 추가 한 후에 만 ​​확인되므로 반환 된 실제 행 수는 더 클 수 있습니다..
PG_LOGICAL_SLOT_PEEK_CHANGES (slot_name 이름, UPTO_LSN PG_LSN, upto_nchanges int, variadic옵션 텍스트 []) (위치 텍스트, xid xid, 데이터 텍스트) 똑같이 동작pg_logical_slot_get_changes ()변경 사항이 소비되지 않는 경우를 제외하고 스포츠 토토; 즉, 향후 전화로 다시 반환됩니다.
pg_logical_slot_get_binary_changes (SLOT_NAME 이름, upto_lsn PG_LSN, upto_nchanges int, variadic옵션 텍스트 []) (위치 PG_LSN, xid xid, 데이터 BYTEA) 똑같이 동작pg_logical_slot_get_changes ()함수, 변경 사항을 제외하고.BYTEA.
pg_logical_slot_peek_binary_changes (SLOT_NAME 이름, UPTO_LSN PG_LSN, upto_nchanges int, variadic옵션 텍스트 []) (위치 PG_LSN, xid xid, 데이터 BYTEA) 똑같이 동작PG_LOGICAL_SLOT_GET_CHANGES ()함수, 변경 사항을 제외하고.BYTEA그리고 그 변화는 소비되지 않습니다. 즉, 향후 전화로 다시 반환됩니다.
pg_replication_origin_create (node_name 텍스트) OID 지정된 외부 이름으로 복제 원점을 작성하고 지정된 내부 ID를 반환합니다.
pg_replication_origin_drop (node_name 텍스트) void 관련 재생 진행을 포함하여 이전에 생성 된 복제 원점을 삭제합니다.
pg_replication_origin_oid (node_name 텍스트40338_40341 OID 이름으로 복제 원점을 조회하고 내부 ID를 반환하십시오. 해당 복제 원점이 발견되지 않으면 오류가 발생합니다.
pg_replication_origin_session_setup (node_name 텍스트) void 현재 세션을 주어진 원점에서 재생하는 것으로 표시하여 재생 진행을 추적 할 수 있습니다. 스포츠 토토pg_replication_origin_session_reset복귀하려면. 이전 원점이 구성되지 않은 경우에만 스포츠 토토할 수 있습니다.
pg_replication_origin_session_reset () void 의 효과 취소pg_replication_origin_session_setup ().
pg_replication_origin_session_is_setup () bool 현재 세션에서 복제 원점이 구성 되었습니까?
pg_replication_origin_session_progress (플러시 bool) PG_LSN 현재 세션에서 구성된 복제 원본의 재생 위치를 반환합니다. 매개 변수플러시해당 지역 거래가 디스크로 플러시되었는지 여부를 결정합니다.
pg_replication_origin_xact_setup (origin_lsn PG_LSN, origin_timestamp Timestamptz) void 현재 거래를 주어진 거래를 재생하는 것으로 표시LSN및 타임 스탬프. 복제 원점이 이전에 사용하여 구성된 경우에만 호출 할 수 있습니다pg_replication_origin_session_setup ().
pg_replication_origin_xact_reset (origin_lsn PG_LSN, origin_timestamp Timestamptz) void 의 효과 취소pg_replication_origin_xact_setup (). 두 가지 주장이 소개되었다실수로동안PostgreSQL9.5 개발주기 기간pg_replication_origin_xact_reset ()실제로 그것들을 전혀 스포츠 토토하지 않습니다. 따라서을 제외한 더미 값은NULL인수로 안전하게 지정할 수 있습니다. 이 실수는 향후 릴리스에서 수정 될 것입니다.
pg_replication_origin_advance(node_name 텍스트, POS PG_LSN) void 주어진 노드의 복제 진행을 주어진 위치로 설정합니다. 이는 주로 구성 변경 및 이와 유사한 후 초기 위치 또는 새로운 위치를 설정하는 데 유용합니다. 이 스포츠 토토을 부주의하게 사용하는 데이터가 일관되지 않게 복제 된 데이터로 이어질 수 있습니다.
pg_replication_origin_progress (node_name 텍스트, 플러시 bool43999_44002 PG_LSN 주어진 복제 원점의 재생 위치를 반환합니다. 매개 변수플러시해당 지역 거래가 디스크로 플러시되었는지 여부를 결정합니다.

9.26.7. 데이터베이스 객체 관리 스포츠 토토

표 9-73데이터베이스 개체의 디스크 공간 사용량 계산.

표 9-73. 데이터베이스 객체 크기 스포츠 토토

이름 반환 유형 설명
pg_column_size (any) int 특정 값을 저장하는 데 스포츠 토토되는 바이트 수 (압축 될 수 있음)
pg_database_size (OID) bigint 지정된 OID와 함께 데이터베이스에서 사용하는 디스크 공간
pg_database_size (이름) bigint 지정된 이름으로 데이터베이스에서 사용하는 디스크 공간
pg_indexes_size (Regclass) bigint 지정된 표에 첨부 된 인덱스에 의해 스포츠 토토되는 총 디스크 공간
pg_relation_size (관계 RegClass, 포크 텍스트) bigint 지정된 포크에서 사용하는 디스크 공간 ('main', 'FSM', 'vm'또는'init') 지정된 테이블 또는 색인의
pg_relation_size (관계 regclass) bigint 속기pg_relation_size (..., 'main')
pg_size_pretty (bigint) 텍스트 64 비트 정수로 표현 된 바이트의 크기를 크기 단위를 가진 사람이 읽을 수있는 형식으로 변환
pg_size_pretty (숫자) 텍스트 크기를 숫자 값으로 표현한 바이트의 크기를 크기 단위를 가진 사람이 읽을 수있는 형식으로 변환
pg_table_size (Regclass) bigint 지정된 테이블에서 스포츠 토토하는 디스크 공간 (그러나 토스트, 여유 공간 맵 및 가시성 맵 포함)
pg_tablespace_size (OID) bigint 지정된 OID와 함께 테이블 스페이스에서 사용하는 디스크 공간
pg_tablespace_size (이름) bigint 지정된 이름으로 테이블 스페이스에서 사용하는 디스크 공간
PG_TOTAL_RELATION_SIZE (RegClass) bigint 모든 인덱스를 포함하여 지정된 테이블에서 스포츠 토토하는 총 디스크 공간토스트데이터

pg_column_size개별 데이터 값을 저장하는 데 사용되는 공간을 보여줍니다.

PG_TOTAL_RELATION_SIZE테이블 또는 토스트 테이블의 OID 또는 이름을 허용하고 모든 관련 인덱스를 포함하여 해당 테이블에 사용 된 총 디스크 공간을 반환합니다. 이 스포츠 토토은와 같습니다.pg_table_size + pg_indexes_size.

pg_table_size테이블의 OID 또는 이름을 수락하고 인덱스를 제외한 해당 테이블에 필요한 디스크 공간을 반환합니다. (토스트 공간, 여유 공간지도 및 가시성 맵이 포함되어 있습니다.)

pg_indexes_size테이블의 OID 또는 이름을 허용하고 해당 테이블에 첨부 된 모든 인덱스에서 사용하는 총 디스크 공간을 반환합니다.

pg_database_sizeandpg_tablespace_size데이터베이스 또는 테이블 스페이스의 OID 또는 이름을 수락하고 여기에 사용 된 총 디스크 공간을 반환하십시오. 사용하려면pg_database_size, 당신은Connect지정된 데이터베이스에 대한 권한 (기본적으로 부여됨). 사용하려면pg_tablespace_size, 당신은 있어야합니다Create현재 데이터베이스의 기본 테이블 스페이스가 아닌 한 지정된 테이블 스페이스에 대한 권한.

pg_relation_size테이블, 인덱스 또는 토스트 테이블의 OID 또는 이름을 허용하고 해당 관계의 한 포크의 바이트로 온 디스크 크기를 반환합니다. (대부분의 목적으로 더 높은 수준의 스포츠 토토을 사용하는 것이 더 편리합니다PG_TOTAL_RELATION_SIZE또는pg_table_size는 모든 포크의 크기를 합산합니다.) 하나의 인수와 함께, 그것은 관계의 기본 데이터 포크의 크기를 반환합니다. 두 번째 인수는 검사 할 포크를 지정하기 위해 제공 될 수 있습니다.

  • 'main'관계의 기본 데이터 포크의 크기를 반환합니다.

  • 'FSM'여유 공간지도의 크기를 반환합니다 (참조섹션 63.3) 관계와 관련된.

  • 'vm'가시성 맵의 크기를 반환합니다 (참조토토 사이트 : 문서 : 9.5 : 가시성 맵) 관계와 관련된.

  • 'init'관계와 관련된 초기화 포크의 크기를 반환합니다.

pg_size_prettyKB, MB, GB 또는 TB를 사용하여 다른 스포츠 토토 중 하나의 결과를 적절하게 사용하여 인간 읽을 수있는 방식으로 포맷하는 데 사용될 수 있습니다.

테이블 또는 인덱스에서 작동하는 위의 스포츠 토토은 a를 허용합니다.regclass인수, 이것은 단순히 테이블 또는 인덱스의 OID입니다pg_class스포츠 토토 카탈로그. 그러나 이후로 Oid를 직접 찾을 필요는 없습니다.Regclass데이터 유형의 입력 변환기가 작업을 수행합니다. 문자 그대로 상수처럼 보이도록 단일 따옴표로 둘러싸인 테이블 이름을 작성하십시오. 평범한 취급과 호환성SQL이름, 테이블 이름 주위에 이중 인용문이 포함되어 있지 않으면 문자열이 소문자로 변환됩니다.

기존 객체를 나타내지 않는 OID가 위의 함수 중 하나에 인수로 전달되면 NULL이 반환됩니다.

표 9-74데이터베이스 개체와 관련된 특정 디스크 파일을 식별하는 데 도움이됩니다.

표 9-74. 데이터베이스 객체 위치 함수

이름 반환 유형 설명
PG_RELATION_FILENODE (관계 Regclass) OID 지정된 관계의 Filenode 번호
PG_RELATION_FILEPATH (관계 Regclass) 텍스트 지정된 관계의 파일 경로 이름
PG_FILENODE_RELATION (테이블 스페이스 OID, filenode OID) Regclass 주어진 테이블 스페이스 및 필레 노드와 관련된 관계를 찾으십시오

PG_RELATION_FILENODE테이블, 인덱스, 시퀀스 또는 토스트 테이블의 OID 또는 이름을 허용하고를 반환합니다."Filenode"현재 할당 된 번호. Filenode는 관계에 사용되는 파일 이름의 기본 구성 요소입니다 (참조PostgreSQL : 문서 : 9.5 : 데이터베이스 토토 결과 레이아웃자세한 내용은). 대부분의 테이블의 경우 결과는와 동일합니다.PG_CLASS.relfilenode그러나 특정 스포츠 토토 카탈로그의 경우relfilenode| 제로 이며이 함수는 올바른 값을 얻기 위해 사용해야합니다. 뷰와 같이 스토리지가없는 관계를 전달하면 함수가 NULL을 반환합니다.

PG_RELATION_FILEPATH|PG_RELATION_FILENODE, 그러나 전체 파일 경로 이름을 반환합니다 (데이터베이스 클러스터의 데이터 디렉토리에 비해pgdata) 관계의.

PG_FILENODE_RELATION반대PG_RELATION_FILENODE. 주어진"테이블 스페이스"OID 및 A"Filenode", 관련 관계의 OID를 반환합니다. 데이터베이스의 기본 테이블 스페이스의 테이블의 경우 테이블 스페이스를 0으로 지정할 수 있습니다.

9.26.8. 색인 유지 관리 스포츠 토토

표 9-75인덱스 유지 보수 작업에 사용 가능한 스포츠 토토을 표시합니다.

표 9-75. 색인 유지 관리 스포츠 토토

이름 반환 유형 설명
brin_summarize_new_values ​​(index_oid Regclass) Integer 요약되지 않은 페이지 범위 요약

brin_summarize_new_values인수로서 브린 색인 OID를 수신하고 인덱스를 검사하여 현재 인덱스에 의해 요약되지 않은 기본 테이블에서 페이지 범위를 찾도록 검사합니다. 이러한 범위의 경우 표 페이지를 스캔하여 새로운 요약 인덱스 튜플을 만듭니다. 인덱스에 삽입 된 새 페이지 범위 요약 수를 반환합니다.

9.26.9. 일반 파일 액세스 함수

표 9-76서버를 호스팅하는 컴퓨터의 파일에 기본 액세스를 제공합니다. 데이터베이스 클러스터 디렉토리 및 내의 파일 만log_directory액세스 할 수 있습니다. 클러스터 디렉토리의 파일에 상대 경로를 스포츠 토토하고와 일치하는 경로를 스포츠 토토하십시오.log_directory로그 파일의 구성 설정. 이러한 스포츠 토토의 사용은 슈퍼업자로 제한됩니다.

56420_56463

이름 반환 유형 설명
PG_LS_DIR (Dirname 텍스트[,Missing_ok 부울, include_dot_dirs 부울]) 텍스트 설정 디렉토리의 내용을 나열합니다.
PG_READ_FILE (filename 텍스트[,오프셋 bigint, 길이 bigint[,Missing_ok 부울]]) 텍스트 텍스트 파일의 내용을 반환합니다.
PG_READ_BINARY_FILE (filename 텍스트[,오프셋 bigint, 길이 bigint[,Missing_ok 부울]]) BYTEA 파일의 내용을 반환합니다.
PG_STAT_FILE (filename 텍스트[,Missing_ok 부울]) 레코드 파일에 대한 정보를 반환합니다.

이러한 모든 스포츠 토토은 선택 사항을 취합니다Missing_ok매개 변수 - 파일 또는 디렉토리가 존재하지 않을 때 동작을 지정합니다. 만약에true, 함수는 NULL을 반환합니다 (제외PG_LS_DIR, 빈 결과 세트를 반환합니다). 만약에거짓, 오류가 발생합니다. 기본값은false.

PG_LS_DIR지정된 디렉토리에서 모든 파일 (및 디렉토리 및 기타 특수 파일)의 이름을 반환합니다. 그만큼include_dot_dirs"."".."결과 세트에 포함되어 있습니다. 기본값은 제외하는 것입니다 (거짓) 그러나 그것들을 포함시키는 경우Missing_okistrue, 빈 디렉토리를 존재하지 않는 디렉토리와 구별하려면

PG_READ_FILE주어진 곳에서 시작하여 텍스트 파일의 일부를 반환합니다오프셋, 최대 반환길이바이트 (파일 끝이 먼저 도달하면 적음). 만약에오프셋음수이며 파일의 끝과 관련이 있습니다. 만약에오프셋길이생략되면 전체 파일이 반환됩니다. 파일에서 읽은 바이트는 서버 인코딩의 문자열로 해석됩니다. 해당 인코딩에서 유효하지 않으면 오류가 발생합니다.

PG_READ_BINARY_FILE와 유사합니다PG_READ_FILE결과가 a를 제외하고BYTEA값; 따라서 인코딩 검사는 수행되지 않습니다. 와 함께Convert_from함수,이 함수는 지정된 인코딩에서 파일을 읽는 데 사용될 수 있습니다 :

convert_from (pg_read_binary_file ( 'file_in_utf8.txt'), 'utf8'); 선택

PG_STAT_FILE파일 크기, 마지막 액세스 타임 스탬프, 마지막 수정 타임 스탬프, 마지막 파일 상태 변경 시간 스탬프 (Unix 플랫폼 만), 파일 생성 시간 스탬프 (Windows 만) 및 A가 포함 된 레코드를 반환합니다.부울디렉토리인지를 나타냅니다. 일반적인 스포츠 토토에는 다음이 포함됩니다.

선택 *에서 pg_stat_file ( 'filename');
선택 (pg_stat_file ( 'filename')). 수정;

9.26.10. 자문 잠금 스포츠 토토

표 9-77자문 잠금 관리. 이러한 스포츠 토토의 적절한 사용에 대한 자세한 내용은 참조하십시오.섹션 13.3.5.

표 9-77. 자문 잠금 스포츠 토토

이름 반환 유형 설명
pg_advisory_lock (​​키 bigint) void 독점 세션 레벨 자문 잠금
pg_advisory_lock (key1 int, key2 int) void 독점 세션 레벨 자문 잠금
pg_advisory_lock_shared ( bigint) void 공유 세션 레벨 자문 잠금
pg_advisory_lock_shared (key1 int, key2 int) void 공유 세션 레벨 자문 잠금
pg_advisory_unlock ( bigint) 부울 독점 세션 레벨 자문 잠금 릴
pg_advisory_unlock (key1 int, key2 int) 부울 독점 세션 레벨 자문 잠금 릴
pg_advisory_unlock_all () void 현재 세션에서 보유한 모든 세션 레벨 자문 잠금 릴리스
pg_advisory_unlock_shared ( bigint) 부울 공유 세션 수준 자문 잠금 릴리즈
pg_advisory_unlock_shared (key1 int, key2 int) 부울 공유 세션 레벨 자문 잠금 릴
pg_advisory_xact_lock ( bigint) void 독점 거래 레벨 자문 잠금
pg_advisory_xact_lock (key1 int, key2 int) void 독점 거래 레벨 자문 잠금
pg_advisory_xact_lock_shared ( bigint) void 공유 거래 레벨 자문 잠금
pg_advisory_xact_lock_shared (key1 int, key2 int) void 공유 거래 레벨 자문 잠금
pg_try_advisory_lock ( bigint) 부울 사용 가능한 경우 독점 세션 레벨 자문 잠금을 얻습니다
PG_TRY_ADVISORY_LOCK (key1 int, key2 int) 부울 사용 가능한 경우 독점 세션 레벨 자문 잠금을 얻습니다
pg_try_advisory_lock_shared ( bigint) 부울 사용 가능한 경우 공유 세션 레벨 자문 잠금 획득
pg_try_advisory_lock_shared (key1 int, key2 int) 부울 사용 가능한 경우 공유 세션 레벨 자문 잠금 획득
PG_TRY_ADVISORY_XACT_LOCK ( bigint) 부울 사용 가능한 경우 독점 거래 레벨 자문 잠금
PG_TRY_ADVISORY_XACT_LOCK (key1 int, key2 int) 부울 사용 가능한 경우 독점 거래 레벨 자문 잠금
pg_try_advisory_xact_lock_shared ( bigint) 부울 사용 가능한 경우 공유 거래 레벨 자문 잠금 획득
pg_try_advisory_xact_lock_shared (key1 int, key2 int) 부울 사용 가능한 경우 공유 거래 레벨 자문 잠금 획득

pg_advisory_lock단일 64 비트 키 값 또는 두 개의 32 비트 키 값으로 식별 할 수있는 응용 프로그램 정의 리소스를 잠그십시오 (이 두 주요 공간은 겹치지 않습니다). 다른 세션에서 이미 동일한 리소스 식별자에 대한 잠금 장치를 보유한 경우이 스포츠 토토은 리소스를 사용할 수있게 될 때까지 대기합니다. 자물쇠는 독점적입니다. 다중 잠금 요청 스택, 동일한 자원이 3 번 잠금되면 다른 세션의 사용을 위해 3 번 잠금을 해제해야합니다..

pg_advisory_lock_sharedpg_advisory_lock, 잠금 장치를 공유 잠금을 요청하는 다른 세션과 공유 할 수있는 경우를 제외하고. 독점적 인 사물함 만 잠겨 있습니다.

PG_TRY_ADVISORY_LOCKpg_advisory_lock- 함수가 잠금을 사용할 수있을 때까지 대기하지 않는 경우를 제외하고. 즉시 잠금을 얻고 반환합니다true또는 return거짓잠금을 즉시 얻을 수없는 경우.

pg_try_advisory_lock_sharedPG_TRY_ADVISORY_LOCK, 독점적 인 잠금이 아닌 공유를 취득하려는 시도를 제외하고

pg_advisory_unlock이전에 획득 한 독점 세션 레벨 자문 잠금 장치를 출시합니다. 반환true잠금이 성공적으로 해제 된 경우. 자물쇠가 유지되지 않으면 반환됩니다거짓, 또한 서버에서 SQL 경고 가보고됩니다.

pg_advisory_unlock_sharedpg_advisory_unlock, 공유 세션 수준 자문 잠금을 출시 한 경우를 제외하고

pg_advisory_unlock_all​​현재 세션에서 보유한 모든 세션 레벨 자문 잠금 장치를 출시합니다. (이 스포츠 토토은 클라이언트가 끊임없이 끊어 지더라도 세션 종료시 암시 적으로 호출됩니다.)

pg_advisory_xact_lockpg_advisory_lock, 현재 트랜잭션이 끝날 때 자동으로 릴리스되고 명시 적으로 해제 될 수없는 경우를 제외하고.

pg_advisory_xact_lock_shared|pg_advisory_lock_shared, 현재 트랜잭션이 끝날 때 자동으로 릴리스되고 명시 적으로 해제 될 수없는 경우를 제외하고.

PG_TRY_ADVISORY_XACT_LOCK|PG_TRY_ADVISORY_LOCK, 잠금을 제외하고, 획득 한 경우, 현재 트랜잭션이 끝날 때 자동으로 릴리스되고 명시 적으로 해제 될 수 없다..

pg_try_advisory_xact_lock_shared|pg_try_advisory_lock_shared70393_70525