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

9.24. 시스템 관리 기능

테이블 9-54쿼리 및 변경에 사용 가능한 메이저 토토 사이트을 표시합니다 런타임 구성 매개 변수.

표 9-54. 구성 설정 메이저 토토 사이트

이름 반환 유형 설명
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. 예 :

set_config ( 'log_statement_stats', 'off', false);

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

테이블 9-55다른 서버 프로세스로 제어 신호를 전송합니다. 사용 이러한 메이저 토토 사이트은 슈퍼업자로 제한됩니다.

표 9-55. 서버 신호 메이저 토토 사이트

이름 반환 유형 설명
pg_cancel_backend(PID int) 부울 백엔드의 현재 쿼리 취소
pg_terminate_backend(PID int) 부울 백엔드 종료
pg_reload_conf() 부울 서버 프로세스가 구성을 다시로드하도록합니다 파일
pg_rotate_logfile() 부울 서버의 로그 파일 회전

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

pg_cancel_backendandpg_terminate_backend신호 전송 (Sigint또는Sigterm각각) 백엔드 프로세스 프로세스 ID로 식별. 활성 백엔드의 프로세스 ID는 할 수 있습니다 에서 찾을 수 있습니다.Procpid열의 그만큼pg_stat_activity보기 또는 목록Postgres서버 (사용PSon Unix 또는작업 관리자onWindows).

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

pg_rotate_logfile신호 로그 파일 관리자는 즉시 새 출력 파일로 전환합니다. 이것 내장 로그 수집기가 실행 중일 때만 작동합니다. 그렇지 않으면 로그 파일 관리자 하위 프로세스가 없습니다.

에 표시된 메이저 토토 사이트테이블 9-56온라인 백업을 지원합니다. 처음 세 가지 사용 함수는 슈퍼업자로 제한됩니다.

표 9-56. 백업 제어 메이저 토토 사이트

이름 반환 유형 설명
PG_START_BACKUP(레이블 텍스트[, 빠른 부울]) 텍스트 온라인 백업 수행 준비
PG_STOP_BACKUP() 텍스트 온라인 백업 수행 완료
PG_SWITCH_XLOG() 텍스트 새로운 트랜잭션 로그 파일로 전환
pg_current_xlog_location() 텍스트 현재 트랜잭션 받기 로그 쓰기 위치
pg_current_xlog_insert_location() 텍스트 현재 트랜잭션 가져 오기 로그 삽입
PG_XLOGFILE_NAME_OFFSET(위치 텍스트) 텍스트, Integer 트랜잭션 로그 위치 문자열을 파일 이름으로 변환합니다 및 파일 내 소수점 바이트 오프셋
pg_xlogfile_name(위치 텍스트) 텍스트 트랜잭션 로그 위치 문자열을 파일로 변환합니다 이름

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

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

선택적 부울 두 번째 매개 변수가 있습니다. 만약에true, 그것은 실행을 지정합니다PG_START_BACKUP가능한 빨리. 이것 즉각적인 체크 포인트를 강제하여 I/O에서 급상승 할 수 있습니다. 조작, 동시에 실행하는 쿼리 속도 속도.

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

PG_SWITCH_XLOG다음으로 이동합니다 트랜잭션 로그 파일, 현재 파일을 보관할 수 있습니다. (연속 아카이브를 사용하고 있다고 가정). 반환 값 결말 트랜잭션 로그 위치 + 1은 방금 완성 된 트랜잭션 로그 파일. 없다면 마지막 트랜잭션 로그 스위치 이후 트랜잭션 로그 활동PG_SWITCH_XLOG아무것도하지 않습니다 트랜잭션 로그 파일의 시작 위치를 반환합니다. 사용 중.

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트랜잭션 로그 파일 이름 만 추출합니다. 주어진 경우 트랜잭션 로그 위치는 정확히 트랜잭션 로그 파일에 있습니다. 경계,이 두 기능은 선행의 이름을 반환합니다. 트랜잭션 로그 파일. 이것은 일반적으로 원하는 행동입니다 전례 이후 트랜잭션 로그 아카이빙 동작 관리 파일은 현재 보관 해야하는 마지막 파일입니다.

이 메이저 토토 사이트의 적절한 사용에 대한 자세한 내용은 참조PostgreSQL : 문서 : 8.4 : 연속 보관 및 시점 토토 캔 (PITR).

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

표 9-57. 데이터베이스 객체 크기 기능

이름 반환 유형 설명
pg_column_size(any) int 특정 값을 저장하는 데 사용되는 바이트 수 (아마도 압축)
pg_database_size(OID) bigint 지정된 데이터베이스에서 사용하는 디스크 공간 OID
pg_database_size(이름) bigint 지정된 데이터베이스에서 사용하는 디스크 공간 이름
pg_relation_size(관계 Regclass, 포크 텍스트) bigint 지정된 포크에서 사용하는 디스크 공간 ('main', 'FSM'또는'vm'25501_25567
pg_relation_size(관계 Regclass) bigint 속기pg_relation_size (..., 'main')
pg_size_pretty(bigint) 텍스트 크기를 바이트로 인간 읽을 수있는 형식으로 변환합니다 크기 단위
pg_tablespace_size(OID) bigint 지정된 테이블 스페이스에서 사용하는 디스크 공간 OID
pg_tablespace_size(이름) bigint 디스크 공간이 지정된 테이블 스페이스에서 사용하는 디스크 공간 이름
PG_TOTAL_RELATION_SIZE(RegClass) bigint 지정된 테이블에서 사용하는 총 디스크 공간 색인 및를 포함한 OID 또는 이름토스트데이터

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

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

pg_relation_sizeOID를 수락합니다 또는 테이블, 인덱스 또는 토스트 테이블의 이름으로 크기를 반환합니다. 바이트. 지정'main'두 번째 인수는 주 데이터 포크의 크기를 반환합니다. 관계. 지정'FSM'반환합니다 여유 공간지도의 크기 (참조섹션 53.3) 관계. 지정'VM'반환 가시성 맵의 크기 (참조토토 : 문서 : 8.4 : 가시성 맵) 관계와 관련된.

pg_size_pretty익숙해 질 수 있습니다 다른 함수 중 하나의 결과를 KB, MB, GB 또는 TB를 적절하게 사용하는 사람이 읽을 수있는 방법.

PG_TOTAL_RELATION_SIZE수락 테이블 또는 토스트 테이블의 OID 또는 이름을 반환합니다. 데이터의 바이트 및 모든 관련 인덱스 및 토스트 테이블.

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

표 9-58. 일반 파일 액세스 함수

이름 반환 유형 설명
PG_LS_DIR(dirname 텍스트) 텍스트 설정 디렉토리의 내용 목록
PG_READ_FILE(filename 텍스트, 오프셋 bigint, 길이 bigint) 텍스트 텍스트 파일의 내용을 반환
PG_STAT_FILE(filename 텍스트) 레코드 파일에 대한 정보 반환

PG_LS_DIR모든 이름을 반환합니다 특수 항목을 제외한 지정된 디렉토리에서"."and"..".

PG_READ_FILEa의 일부를 반환합니다 텍스트 파일, 주어진에서 시작오프셋, 최대 반환길이바이트 (파일 끝에 도달하면 적습니다 첫 번째). 만약에오프셋부정적입니다 파일의 끝과 관련이 있습니다.

PG_STAT_FILE레코드를 반환합니다 파일 크기, 마지막으로 액세스 된 타임 스탬프, 마지막 수정 타임 스탬프, 마지막 파일 상태 변경 타임 스탬프 (UNIX 플랫폼 전용), 파일 생성 타임 스탬프 (Windows 만) 및 A부울디렉토리인지를 나타냅니다. 전형적인 사용법은 다음과 같습니다.

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

표 9-59자문 잠금 관리. 이것들의 적절한 사용에 대한 자세한 내용은 메이저 토토 사이트, 참조섹션 13.3.4.

표 9-59. 자문 잠금 기능

이름 반환 유형 설명
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_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_advisory_unlock( bigint) 부울 독점 자문 잠금 릴리즈
pg_advisory_unlock(key1 int, key2 int) 부울 독점 자문 잠금 릴리스
pg_advisory_unlock_shared( bigint) 부울 공유 자문 잠금 해제
pg_advisory_unlock_shared(key1 int, key2 int) 부울 공유 자문 잠금 해제
pg_advisory_unlock_all() void 현재에서 보유한 모든 자문 잠금 장치를 릴리스합니다 세션

pg_advisory_lock잠금 an 응용 프로그램 정의 리소스 단일 64 비트 키 값 또는 두 개의 32 비트 키 값 ( 두 개의 주요 공간이 겹치지 않습니다). 핵심 유형은에 지정되어 있습니다.pg_locks.objid. 다른 세션 인 경우 이미 동일한 자원에 잠금 장치를 보유하고 있으며 메이저 토토 사이트이 대기합니다. 리소스를 사용할 수있을 때까지. 자물쇠는 독점적입니다. 다중 잠금 요청이 스택을 요청하여 동일한 자원이 세 번 잠긴 경우에는 세 번 잠금을 해제해야합니다. 다른 세션의 사용을 위해 출시되었습니다.

pg_advisory_lock_shared작품 동일pg_advisory_lock, 자물쇠를 제외하고는 다른 세션과 공유 할 수 있습니다. 공유 잠금. 독점적 인 사물함 만 잠겨 있습니다 밖으로.

PG_TRY_ADVISORY_LOCK비슷합니다 에게pg_advisory_lock를 제외하고 함수가 잠금을 사용할 수있을 때까지 대기하지 않습니다. 그것은 할 것입니다 즉시 잠금을 얻고 반환true또는 return거짓IF 자물쇠는 즉시 획득 할 수 없습니다.

pg_try_advisory_lock_sharedPG_TRY_ADVISORY_LOCK독점적 인 자물쇠보다는 공유를 얻습니다.

pg_advisory_unlock릴리스됩니다 이전에 획득 한 독점 자문 잠금. 반환true잠금이 성공적으로 인 경우 출시된. 자물쇠가 유지되지 않으면 반환됩니다거짓, 또한 SQL 경고가 있습니다 서버에 의해 제기.

pg_advisory_unlock_shared작품 동일pg_advisory_unlock, 공유 자문 잠금 장치를 출시 한 경우를 제외하고

pg_advisory_unlock_all의지 현재 세션에서 보유한 모든 자문 잠금 장치를 해제하십시오. (이것 클라이언트가 있더라도 기능이 세션 종료시 암시 적으로 호출됩니다. 끊임없이 연결을 끊습니다.)