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

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

이 섹션에 설명된 스포츠 토토 결과은 다음을 제어하고 모니터링하는 데 사용됩니다.PostgreSQL설치.

9.26.1. 구성 설정 스포츠 토토 결과

표 9.77런타임 구성 매개변수를 쿼리하고 변경하는 데 사용할 수 있는 함수를 표시합니다.

표 9.77. 구성 설정 스포츠 토토 결과

이름 반환 유형 설명
현재_설정(설정_이름 [, missing_ok ]) 텍스트 현재 설정 값 가져오기
set_config(설정_이름, new_value, is_local) 텍스트 매개변수 설정 및 새 값 반환

함수현재_설정설정의 현재 값을 산출설정_이름. 에 해당합니다.SQL명령표시. 예:

SELECT current_setting('날짜 스타일');

 현재_설정
-----------------
 ISO, MDY
(1행)

이름이 지정된 설정이 없는 경우설정_이름, 현재_설정다음이 아니면 오류가 발생합니다.missing_ok제공되며.

set_config매개변수 설정설정_이름new_value. 만약에is_localis, 새 값은 현재 거래에만 적용됩니다. 현재 세션에 새 값을 적용하려면 다음을 사용하세요.거짓대신. 이 함수는 SQL 명령에 해당합니다.SET. 예:

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

 세트_구성
------------
 끄다
(1행)

9.26.2. 서버 신호 스포츠 토토 결과

다음에 표시된 스포츠 토토 결과표 9.78다른 서버 프로세스에 제어 신호를 보냅니다. 이러한 스포츠 토토 결과의 사용은 기본적으로 수퍼유저로 제한되어 있지만 다음을 사용하여 다른 사람에게도 액세스 권한을 부여할 수 있습니다.그랜트, 명시된 예외가 있음.

표 9.78. 서버 신호 스포츠 토토 결과

이름 반환 유형 설명
pg_cancel_backend(pid int) 부울 백엔드의 현재 쿼리를 취소합니다. 이는 호출 역할이 백엔드가 취소되거나 호출 역할이 부여된 역할의 구성원인 경우에도 허용됩니다.pg_signal_backend그러나 슈퍼유저만 슈퍼유저 백엔드를 취소할 수 있습니다.
pg_reload_conf() 부울 서버 프로세스가 구성 파일을 다시 로드하도록 함
pg_rotate_logfile() 부울 서버의 로그 파일 순환
pg_terminate_backend(pid int) 부울 백엔드를 종료합니다. 이는 호출 역할이 백엔드가 종료되거나 호출 역할이 부여된 역할의 구성원인 경우에도 허용됩니다.pg_signal_backend, 그러나 슈퍼유저만 슈퍼유저 백엔드를 종료할 수 있습니다.

이러한 각 함수는 다음을 반환합니다.성공하고거짓그렇지 않으면.

pg_cancel_backend그리고pg_terminate_backend신호 보내기 (SIGINT또는SIGTERM각각)을 프로세스 ID로 식별된 백엔드 프로세스에 추가합니다. 활성 백엔드의 프로세스 ID는 다음에서 찾을 수 있습니다.pidpg_stat_activity보기 또는 목록을 작성하여포스트그레스서버의 프로세스(사용psUnix 또는작업 관리자켜짐윈도우). 활성 백엔드의 역할은 다음에서 찾을 수 있습니다.사용자 이름pg_stat_activity보기.

pg_reload_conf보냄SIGHUP서버에 신호를 보내 모든 서버 프로세스에서 구성 파일을 다시 로드합니다.

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

9.26.3. 백업 제어 스포츠 토토 결과

다음에 표시된 스포츠 토토 결과표 9.79온라인 백업을 지원합니다. 복구 중에는 이러한 스포츠 토토 결과을 실행할 수 없습니다(비독점 제외).pg_start_backup, 비독점pg_stop_backup, pg_is_in_backup, pg_backup_start_time그리고pg_wal_lsn_diff).

표 9.79. 백업 제어 스포츠 토토 결과

이름 반환 유형 설명
pg_create_restore_point(이름 텍스트) pg_lsn 복원을 수행하기 위한 명명된 지점 생성(기본적으로 수퍼유저로 제한되지만 다른 사용자에게 EXECUTE 권한을 부여하여 스포츠 토토 결과을 실행할 수 있음)
pg_current_wal_flush_lsn() pg_lsn 현재 미리 쓰기 로그 플러시 위치 가져오기
pg_current_wal_insert_lsn() pg_lsn 현재 미리 쓰기 로그 삽입 위치 가져오기
pg_current_wal_lsn() pg_lsn 현재 미리 쓰기 로그 쓰기 위치 가져오기
pg_start_backup(라벨 텍스트 [, 빠르게 부울 [, 독점 부울 ]]) pg_lsn 온라인 백업 수행 준비(기본적으로 슈퍼유저로 제한되지만 다른 사용자에게는 EXECUTE 권한을 부여하여 해당 스포츠 토토 결과을 실행할 수 있음)
pg_stop_backup() pg_lsn 독점 온라인 백업 수행 완료(기본적으로 수퍼유저로 제한되지만 다른 사용자에게는 EXECUTE 권한을 부여하여 해당 스포츠 토토 결과을 실행할 수 있음)
pg_stop_backup(독점 부울 [, wait_for_archive 부울 ]) 레코드 세트 독점 또는 비독점 온라인 백업 수행 완료(기본적으로 수퍼유저로 제한되지만 다른 사용자에게 EXECUTE 권한을 부여하여 해당 스포츠 토토 결과을 실행할 수 있음)
pg_is_in_backup() 부울 온라인 독점 백업이 아직 진행 중이면 True입니다.
pg_backup_start_time() 시간대가 포함된 타임스탬프 진행 중인 온라인 독점 백업의 시작 시간을 가져옵니다.
pg_switch_wal() pg_lsn 새 미리 쓰기 로그 파일로 강제 전환(기본적으로 수퍼유저로 제한되지만 다른 사용자에게 EXECUTE 권한을 부여하여 함수를 실행할 수 있음)
pg_walfile_name(lsn pg_lsn) 텍스트 미리 쓰기 로그 위치를 파일 이름으로 변환
pg_walfile_name_offset(lsn pg_lsn) 텍스트, 정수 미리 쓰기 로그 위치를 파일 이름 및 파일 내 십진 바이트 오프셋으로 변환
pg_wal_lsn_diff(lsn pg_lsn, lsn pg_lsn) 숫자 두 개의 미리 쓰기 로그 위치 간의 차이 계산

pg_start_backup백업에 대한 임의의 사용자 정의 레이블을 허용합니다. (일반적으로 이는 백업 덤프 파일이 저장될 이름입니다.) 배타적 모드에서 사용될 때 이 함수는 백업 레이블 파일(backup_label) 및 해당 링크가 있는 경우pg_tblspc/디렉토리, 테이블스페이스 맵 파일(테이블스페이스_맵)를 데이터베이스 클러스터의 데이터 디렉터리에 넣고 체크포인트를 수행한 다음 백업의 시작 미리 쓰기 로그 위치를 텍스트로 반환합니다. 사용자는 이 결과값을 무시해도 되지만, 유용할 경우를 대비하여 제공합니다. 비독점 모드에서 사용되는 경우 이러한 파일의 내용은 대신pg_stop_backup함수이며 호출자가 백업에 작성해야 합니다.

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

유형의 선택적 두 번째 매개변수가 있습니다.부울. 만약에, 실행을 지정합니다.pg_start_backup가능한 한 빨리. 이로 인해 I/O 작업이 급증하고 동시에 실행되는 쿼리가 느려지는 즉시 체크포인트가 강제 실행됩니다.

독점 백업에서는,pg_stop_backup레이블 파일을 제거하고, 존재하는 경우테이블스페이스_맵파일 생성자:pg_start_backup. 비독점 백업의 경우,backup_label그리고테이블스페이스_맵은 함수의 결과로 반환되며 (데이터 디렉터리가 아닌) 백업의 파일에 기록되어야 합니다. 유형의 선택적인 두 번째 매개변수가 있습니다.부울. 거짓인 경우,pg_stop_backupWAL이 아카이브될 때까지 기다리지 않고 백업이 완료된 후 즉시 반환됩니다. 이 동작은 WAL 아카이브를 독립적으로 모니터링하는 백업 소프트웨어에만 유용합니다. 그렇지 않으면 백업 일관성을 유지하는 데 필요한 WAL이 누락되어 백업이 쓸모 없게 될 수 있습니다. 이 매개변수가 true로 설정되면,pg_stop_backup보관이 활성화되면 WAL이 보관될 때까지 기다립니다. 대기 상태에서는 다음 경우에만 대기한다는 의미입니다.archive_mode = 항상. 기본에 대한 쓰기 활동이 낮은 경우 다음을 실행하는 것이 유용할 수 있습니다.pg_switch_wal즉시 세그먼트 전환을 트리거하기 위해 기본에서.

기본에서 실행되면 이 함수는 미리 쓰기 로그 아카이브 영역에 백업 기록 파일도 생성합니다. 기록 파일에는 다음과 같은 레이블이 포함됩니다.pg_start_backup, 백업의 미리 쓰기 시작 및 종료 로그 위치, 백업의 시작 및 종료 시간. 반환 값은 백업의 종료 미리 쓰기 로그 위치입니다(다시 무시할 수 있음). 종료 위치를 기록한 후 현재 미리 쓰기 로그 삽입 지점이 자동으로 다음 미리 쓰기 로그 파일로 진행되므로 종료 미리 쓰기 로그 파일을 즉시 보관하여 백업을 완료할 수 있습니다.

pg_switch_wal다음 미리 쓰기 로그 파일로 이동하여 현재 파일을 보관할 수 있습니다(연속 보관을 사용한다고 가정). 반환 값은 방금 완료된 미리 쓰기 로그 파일 내의 미리 쓰기 종료 로그 위치 + 1입니다. 마지막 미리 쓰기 로그 전환 이후 미리 쓰기 로그 활동이 없는 경우,pg_switch_wal아무것도 하지 않고 현재 사용 중인 미리 쓰기 로그 파일의 시작 위치를 반환합니다.

pg_create_restore_point복구 대상으로 사용할 수 있는 명명된 미리 쓰기 로그 레코드를 생성하고 해당 미리 쓰기 로그 위치를 반환합니다. 그런 다음 주어진 이름을 다음과 함께 사용할 수 있습니다.recovery_target_name복구가 진행될 지점을 지정합니다. 이름이 복구 대상과 일치하는 첫 번째 지점에서 복구가 중지되므로 동일한 이름으로 여러 복원 지점을 생성하지 마십시오.

pg_current_wal_lsn현재 미리 쓰기 로그 쓰기 위치를 위 함수에서 사용하는 것과 동일한 형식으로 표시합니다. 비슷하게,pg_current_wal_insert_lsn현재 미리 쓰기 로그 삽입 위치를 표시하고pg_current_wal_flush_lsn현재 미리 쓰기 로그 플러시 위치를 표시합니다. 삽입 위치는논리적미리 쓰기 로그는 언제든지 종료됩니다. 쓰기 위치는 서버의 내부 버퍼에서 실제로 쓰여진 내용의 끝이고 플러시 위치는 내구성 있는 저장소에 기록되도록 보장되는 위치입니다. 쓰기 위치는 서버 외부에서 검사할 수 있는 위치의 끝이며 부분적으로 완료된 미리 쓰기 로그 파일을 보관하려는 경우 일반적으로 원하는 위치입니다. 삽입 및 플러시 위치는 주로 서버 디버깅 목적으로 사용할 수 있습니다. 이는 둘 다 읽기 전용 작업이며 수퍼유저 권한이 필요하지 않습니다.

당신은 사용할 수 있습니다pg_walfile_name_offset위 함수의 결과에서 해당 미리 쓰기 로그 파일 이름과 바이트 오프셋을 추출합니다. 예를 들어:

postgres=# SELECT * FROM pg_walfile_name_offset(pg_stop_backup());
        파일이름 | 파일_오프셋 
-------------+---------------
 00000001000000000000000D |     4039624
(1행)

마찬가지로,pg_walfile_name미리 쓰기 로그 파일 이름만 추출합니다. 지정된 미리 쓰기 로그 위치가 정확히 미리 쓰기 로그 파일 경계에 있는 경우 두 함수 모두 이전 미리 쓰기 로그 파일의 이름을 반환합니다. 이는 일반적으로 미리 쓰기 로그 보관 동작을 관리하기 위해 바람직한 동작입니다. 이전 파일이 현재 보관해야 하는 마지막 파일이기 때문입니다.

pg_wal_lsn_diff두 개의 미리 쓰기 로그 위치 간의 바이트 차이를 계산합니다. 다음과 함께 사용할 수 있습니다.pg_stat_replication또는 다음에 표시된 일부 함수표 9.79복제 지연을 가져옵니다.

이러한 스포츠 토토 결과의 올바른 사용법에 대한 자세한 내용은 다음을 참조하세요.윈 토토 PostgreSQL : 문서 : 10 : 25.3. 연속 보관 및 시점 복구 (PITR).

9.26.4. 복구 제어 스포츠 토토 결과

다음에 표시된 스포츠 토토 결과표 9.80대기 상태에 대한 정보를 제공합니다. 이러한 스포츠 토토 결과은 복구 중 및 정상 실행 중 모두 실행될 수 있습니다.

표 9.80. 복구 정보 스포츠 토토 결과

이름 반환 유형 설명
pg_is_in_recovery() 부울 복구가 아직 진행 중이면 True입니다.
pg_last_wal_receive_lsn() pg_lsn 스트리밍 복제를 통해 마지막 미리 쓰기 로그 위치를 수신하고 디스크에 동기화합니다. 스트리밍 복제가 진행되는 동안 이는 단조롭게 증가합니다. 복구가 완료되면 이는 수신된 마지막 WAL 레코드 값으로 정적으로 유지되고 복구 중에 디스크에 동기화됩니다. 스트리밍 복제가 비활성화되었거나 아직 시작되지 않은 경우 함수는 NULL을 반환합니다.
pg_last_wal_replay_lsn() pg_lsn 복구 중 재생된 마지막 미리 쓰기 로그 위치를 가져옵니다. 복구가 아직 진행 중인 경우 이는 단조롭게 증가합니다. 복구가 완료되면 이 값은 해당 복구 중에 적용된 마지막 WAL 레코드 값으로 정적으로 유지됩니다. 복구하지 않고 서버가 정상적으로 시작되면 함수는 NULL을 반환합니다.
pg_last_xact_replay_timestamp() 시간대가 포함된 타임스탬프 복구 중 재생된 마지막 트랜잭션의 타임스탬프를 가져옵니다. 해당 트랜잭션에 대한 커밋 또는 중단 WAL 레코드가 기본에서 생성된 시간입니다. 복구 중에 재생된 트랜잭션이 없으면 이 함수는 NULL을 반환합니다. 그렇지 않고 복구가 계속 진행 중인 경우 이는 단조롭게 증가합니다. 복구가 완료된 경우 이 값은 해당 복구 중에 적용된 마지막 트랜잭션의 값으로 정적으로 유지됩니다. 복구하지 않고 서버가 정상적으로 시작되면 함수는 NULL을 반환합니다.

다음에 표시된 스포츠 토토 결과표 9.81복구 진행 상황을 제어합니다. 이 스포츠 토토 결과은 복구 중에만 실행될 수 있습니다.

표 9.81. 복구 제어 스포츠 토토 결과

이름 반환 유형 설명
pg_is_wal_replay_paused() 부울 복구가 일시 중지된 경우 True입니다.
pg_wal_replay_pause() 공허 복구를 즉시 일시 중지합니다(기본적으로 수퍼유저로 제한되지만 다른 사용자에게 EXECUTE 권한을 부여하여 스포츠 토토 결과을 실행할 수 있음).
pg_wal_replay_resume() 무효 일시 중지된 경우 복구를 다시 시작합니다(기본적으로 수퍼유저로 제한되지만 다른 사용자에게 EXECUTE 권한을 부여하여 스포츠 토토 결과을 실행할 수 있음).

복구가 일시 중지되는 동안 더 이상 데이터베이스 변경 사항이 적용되지 않습니다. 상시 대기 상태인 경우 모든 새 쿼리에는 데이터베이스의 동일한 일관된 스냅샷이 표시되며 복구가 재개될 때까지 더 이상 쿼리 충돌이 생성되지 않습니다.

스트리밍 복제가 비활성화된 경우 일시 중지된 상태는 문제 없이 무기한 계속될 수 있습니다. 스트리밍 복제가 진행되는 동안 WAL 레코드는 계속 수신되며, 이는 일시 중지 기간, WAL 생성 속도 및 사용 가능한 디스크 공간에 따라 결국 사용 가능한 디스크 공간을 채울 것입니다.

9.26.5. 스냅샷 동기화 스포츠 토토 결과

PostgreSQL데이터베이스 세션이 스냅샷을 동기화할 수 있도록 허용합니다. 에이스냅샷스냅샷을 사용하는 트랜잭션에 표시되는 데이터를 결정합니다. 두 개 이상의 세션이 데이터베이스에서 동일한 콘텐츠를 확인해야 하는 경우 동기화된 스냅샷이 필요합니다. 두 세션이 독립적으로 트랜잭션을 시작하는 경우 두 세션 실행 사이에 세 번째 트랜잭션이 커밋될 가능성이 항상 있습니다.거래 시작한 세션에서는 해당 트랜잭션의 효과를 볼 수 있고 다른 세션에서는 볼 수 없도록 명령합니다.

이 문제를 해결하려면,포스트그레SQL거래를 허용합니다내보내기사용 중인 스냅샷입니다. 수출 거래가 열려 있는 한 다른 거래도 가능합니다.가져오기스냅샷을 볼 수 있으며 이를 통해 첫 번째 트랜잭션이 보는 것과 정확히 동일한 데이터베이스 뷰를 볼 수 있음이 보장됩니다. 그러나 커밋되지 않은 트랜잭션에 의해 수행된 변경 사항과 마찬가지로 이러한 트랜잭션 중 하나에 의해 수행된 데이터베이스 변경 사항은 다른 트랜잭션에 표시되지 않습니다. 따라서 트랜잭션은 기존 데이터와 관련하여 동기화되지만 자체 변경 사항에 대해서는 정상적으로 작동합니다.

스냅샷은 다음을 사용하여 내보내집니다.pg_export_snapshot함수, 다음에 표시됨표 9.82, 다음으로 가져옴트랜잭션 설정명령.

표 9.82. 스냅샷 동기화 스포츠 토토 결과

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

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

참조거래 설정내보낸 스냅샷을 사용하는 방법에 대한 자세한 내용.

9.26.6. 복제 스포츠 토토 결과

다음에 표시된 스포츠 토토 결과표 9.83복제 스포츠 토토 결과을 제어하고 상호작용하기 위한 것입니다. 보다섹션 26.2.5, 섹션 26.2.6PostgreSQL : 문서 : 10 : 49 장 토토 사이트 순위 진행 추적기본 스포츠 토토 결과에 대한 정보를 확인하세요. 복제 원본 스포츠 토토 결과의 사용은 슈퍼유저로 제한됩니다. 복제 슬롯에 대한 스포츠 토토 결과 사용은 슈퍼유저 및 다음을 가진 사용자로 제한됩니다.복제특권.

이러한 스포츠 토토 결과 중 다수는 복제 프로토콜에 동일한 명령을 가지고 있습니다. 보다PostgreSQL : 문서 : 10 : 52.4. 토토 결과 복제 프로토콜.

다음에 설명된 스포츠 토토 결과섹션 9.26.3, 섹션 9.26.4섹션 9.26.5복제에도 관련이 있습니다.

표 9.83. 복제SQL스포츠 토토 결과

스포츠 토토 결과 반환 유형 설명
pg_create_physical_replication_slot(slot_name 이름 [, immediately_reserve 부울, 임시 부울]) (slot_name 이름, lsn pg_lsn) 이름이 새로운 물리적 복제 슬롯을 생성합니다.slot_name. 선택적인 두 번째 매개변수인 경우,, 다음을 지정합니다.LSN이 복제 슬롯은 즉시 예약되어야 합니다. 그렇지 않으면LSN은 스트리밍 복제 클라이언트의 첫 번째 연결 시 예약되어 있습니다. 물리적 슬롯의 변경 사항 스트리밍은 스트리밍 복제 프로토콜을 통해서만 가능합니다. — 참조PostgreSQL : 문서 : 10 : 52.4. 토토 결과 복제 프로토콜. 선택적인 세 번째 매개변수,임시를 true로 설정하면 슬롯이 디스크에 영구적으로 저장되지 않고 현재 세션에서만 사용되도록 지정됩니다. 오류 발생 시 임시 슬롯도 해제됩니다. 이 스포츠 토토 결과은 복제 프로토콜 명령에 해당합니다.CREATE_REPLICATION_SLOT ... 물리적.
pg_drop_replication_slot(slot_name 이름) 공허 이름이 지정된 물리적 또는 논리적 복제 슬롯을 삭제합니다.slot_name. 복제 프로토콜 명령과 동일DROP_REPLICATION_SLOT. 논리적 슬롯의 경우 슬롯이 생성된 동일한 데이터베이스에 연결될 때 호출되어야 합니다.
pg_create_logical_replication_slot(slot_name 이름, 플러그인 이름 [, 임시 부울]) (슬롯_이름 이름, lsn pg_lsn) 이름이 새로운 논리적(디코딩) 복제 슬롯을 생성합니다.slot_name출력 플러그인 사용플러그인. 선택적인 세 번째 매개변수,임시를 true로 설정하면 슬롯이 디스크에 영구적으로 저장되지 않고 현재 세션에서만 사용되도록 지정됩니다. 오류 발생 시 임시 슬롯도 해제됩니다. 이 함수에 대한 호출은 복제 프로토콜 명령과 동일한 효과를 갖습니다.CREATE_REPLICATION_SLOT ... 논리.
pg_logical_slot_get_changes(slot_name 이름, upto_lsn pg_lsn, upto_nchanges int, VARIADIC옵션 텍스트[]) (lsn pg_lsn, xid xid, 데이터 텍스트) 슬롯의 변경 사항을 반환합니다.슬롯_이름, 이후 변경 사항이 마지막으로 소비된 지점부터 시작됩니다. 만약에upto_lsn그리고upto_nchanges가 NULL이면 WAL이 끝날 때까지 논리적 디코딩이 계속됩니다. 만약에upto_lsn은 NULL이 아니며 디코딩에는 지정된 LSN 이전에 커밋된 트랜잭션만 포함됩니다. 만약에upto_nchanges은 NULL이 아니며, 디코딩으로 생성된 행 수가 지정된 값을 초과하면 디코딩이 중지됩니다. 그러나 반환되는 실제 행 수는 더 클 수 있습니다. 이 제한은 각 새 트랜잭션 커밋을 디코딩할 때 생성된 행을 추가한 후에만 확인되기 때문입니다.
pg_logical_slot_peek_changes(slot_name 이름, upto_lsn pg_lsn, upto_nchanges int, VARIADIC옵션 텍스트[]) (lsn pg_lsn, xid xid, 데이터 텍스트) 다음과 같이 행동합니다pg_logical_slot_get_changes()함수. 단, 변경사항은 소비되지 않습니다. 즉, 향후 호출에서 다시 반환됩니다.
pg_logical_slot_get_binary_changes(slot_name 이름, upto_lsn pg_lsn, upto_nchanges int, VARIADIC옵션 텍스트[]) (lsn pg_lsn, xid xid, 데이터 바이테아) 다음과 같이 행동합니다pg_logical_slot_get_changes()함수(변경 사항은 다음과 같이 반환된다는 점 제외)바이테아.
pg_logical_slot_peek_binary_changes(slot_name 이름, upto_lsn pg_lsn, upto_nchanges int, VARIADIC옵션 텍스트[]) (lsn pg_lsn, xid xid, 데이터 바이테아) 다음과 같이 행동합니다pg_logical_slot_get_changes()함수(변경사항이 다음과 같이 반환된다는 점 제외)바이테아그리고 그 변경사항은 소비되지 않습니다. 즉, 향후 호출에서 다시 반환됩니다.
pg_replication_origin_create(노드_이름 텍스트) oid 주어진 외부 이름으로 복제 원본을 생성하고 여기에 할당된 내부 ID를 반환합니다.
pg_replication_origin_drop(노드_이름 텍스트) 무효 관련 재생 진행 상황을 포함하여 이전에 생성된 복제 원본을 삭제합니다.
pg_replication_origin_oid(노드_이름 텍스트) oid 복제 원본을 이름으로 조회하고 내부 ID를 반환합니다. 그러한 복제 원본이 발견되지 않으면,NULL반환되었습니다.
pg_replication_origin_session_setup(노드_이름 텍스트) 무효 현재 세션을 지정된 원본에서 재생 중인 것으로 표시하여 재생 진행 상황을 추적할 수 있습니다. 사용pg_replication_origin_session_reset되돌리려면. 이전 출처가 구성되지 않은 경우에만 사용할 수 있습니다.
pg_replication_origin_session_reset() 무효 효과 취소pg_replication_origin_session_setup().
pg_replication_origin_session_is_setup() 부울 현재 세션에서 복제 원본이 구성되었습니까?
pg_replication_origin_session_progress(플러시 부울) pg_lsn 현재 세션에 구성된 복제 원본의 재생 위치를 반환합니다. 매개변수플러시해당 로컬 트랜잭션이 디스크에 플러시되었는지 여부를 결정합니다.
pg_replication_origin_xact_setup(origin_lsn pg_lsn, origin_timestamp timestamptz) 무효 현재 트랜잭션을 주어진 시점에 커밋된 트랜잭션을 재생하는 것으로 표시LSN및 타임스탬프. 이전에 다음을 사용하여 복제 원본을 구성한 경우에만 호출할 수 있습니다.pg_replication_origin_session_setup().
pg_replication_origin_xact_reset() 무효 효과 취소pg_replication_origin_xact_setup().
pg_replication_origin_advance(노드_이름 텍스트, lsn pg_lsn) 무효 주어진 노드의 복제 진행을 주어진 위치로 설정합니다. 이는 주로 초기 위치를 설정하거나 구성 변경 후 새 위치를 설정하는 데 유용합니다. 이 스포츠 토토 결과을 부주의하게 사용하면 데이터가 일관되지 않게 복제될 수 있다는 점에 유의하세요.
pg_replication_origin_progress(노드_이름 텍스트, 플러시 부울) pg_lsn 주어진 복제 원본에 대한 재생 위치를 반환합니다. 매개변수플러시해당 로컬 트랜잭션이 디스크에 플러시되었는지 여부를 결정합니다.
pg_logical_emit_message(트랜잭션 부울, 접두사 텍스트, 내용 텍스트) pg_lsn 텍스트 논리적 디코딩 메시지를 내보냅니다. 이는 WAL을 통해 일반 메시지를 논리적 디코딩 플러그인에 전달하는 데 사용될 수 있습니다. 매개변수트랜잭션메시지가 현재 트랜잭션의 일부여야 하는지 또는 논리적 디코딩이 레코드를 읽는 즉시 즉시 작성되고 디코딩되어야 하는지를 지정합니다. 그만큼접두사는 논리적 디코딩 플러그인이 흥미로운 메시지를 쉽게 인식하기 위해 사용하는 텍스트 접두어입니다. 그만큼내용메시지 텍스트입니다.
pg_logical_emit_message(트랜잭션 부울, 접두사 텍스트, 내용 바이테아) pg_lsn 이진 논리적 디코딩 메시지를 방출합니다. 이는 WAL을 통해 일반 메시지를 논리적 디코딩 플러그인에 전달하는 데 사용될 수 있습니다. 매개변수트랜잭션메시지가 현재 트랜잭션의 일부여야 하는지 또는 논리적 디코딩이 레코드를 읽는 즉시 즉시 작성하고 디코딩해야 하는지를 지정합니다. 그만큼접두사는 논리적 디코딩 플러그인이 흥미로운 메시지를 쉽게 인식하기 위해 사용하는 텍스트 접두사입니다. 그만큼내용는 메시지의 바이너리 콘텐츠입니다.

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

다음에 표시된 스포츠 토토 결과표 9.84데이터베이스 개체의 디스크 공간 사용량을 계산합니다.

표 9.84. 데이터베이스 개체 크기 함수

이름 반환 유형 설명
pg_column_size(아무거나) int 특정 값을 저장하는 데 사용되는 바이트 수(압축 가능)
pg_database_size(oid) 비긴트 지정된 OID를 가진 데이터베이스가 사용하는 디스크 공간
pg_database_size(이름) 비긴트 지정된 이름을 가진 데이터베이스가 사용하는 디스크 공간
pg_indexes_size(regclass) 비긴트 지정된 테이블에 연결된 인덱스가 사용하는 총 디스크 공간
pg_relation_size(관계 regclass, 포크 텍스트) 비긴트 지정된 포크가 사용하는 디스크 공간('메인', 'fsm', 'vm'또는'초기화'62867_62902
pg_relation_size(관계 regclass) 비긴트 약칭pg_relation_size(..., '메인')
pg_size_bytes(텍스트) 비긴트 크기 단위를 사용하여 사람이 읽을 수 있는 형식의 크기를 바이트로 변환합니다.
pg_size_pretty(비긴트) 텍스트 64비트 정수로 표현된 바이트 단위의 크기를 크기 단위를 사용하여 사람이 읽을 수 있는 형식으로 변환합니다.
pg_size_pretty(숫자) 텍스트 숫자 값으로 표현된 바이트 단위의 크기를 크기 단위가 있는 사람이 읽을 수 있는 형식으로 변환합니다.
pg_table_size(regclass) 비긴트 지정된 테이블에서 사용하는 디스크 공간, 인덱스 제외(단, TOAST, 여유 공간 맵 및 가시성 맵 포함)
pg_tablespace_size(oid) 비긴트 지정된 OID를 가진 테이블스페이스가 사용하는 디스크 공간
pg_tablespace_size(이름) 비긴트 지정된 이름을 가진 테이블스페이스가 사용하는 디스크 공간
pg_total_relation_size(regclass) 비긴트 모든 인덱스를 포함하여 지정된 테이블이 사용하는 총 디스크 공간 및토스트데이터

pg_column_size개별 데이터 값을 저장하는 데 사용되는 공간을 표시합니다.

pg_total_relation_sizeOID 또는 테이블이나 토스트 테이블의 이름을 승인하고 연관된 모든 인덱스를 포함하여 해당 테이블에 사용된 총 디스크 공간을 반환합니다. 이 함수는 다음과 같습니다.pg_table_size + pg_indexes_size.

pg_table_sizeOID 또는 테이블 이름을 승인하고 인덱스를 제외하고 해당 테이블에 필요한 디스크 공간을 반환합니다. (TOAST 공간, 여유 공간 맵, 가시성 맵이 포함되어 있습니다.)

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

pg_database_size그리고pg_tablespace_sizeOID 또는 데이터베이스나 테이블스페이스의 이름을 승인하고 거기에서 사용된 총 디스크 공간을 반환합니다. 사용하려면pg_database_size, 반드시 있어야 합니다연결지정된 데이터베이스에 대한 권한(기본적으로 부여됨) 또는 다음의 구성원이어야 합니다.pg_read_all_stats역할. 사용하려면pg_tablespace_size, 반드시 있어야 합니다생성지정된 테이블스페이스에 대한 권한 또는 해당 테이블스페이스의 구성원이어야 합니다.pg_read_all_stats역할이 현재 데이터베이스의 기본 테이블스페이스가 아닌 경우.

pg_relation_size테이블, 인덱스 또는 토스트 테이블의 OID 또는 이름을 승인하고 해당 관계의 한 포크에 대한 디스크상의 크기를 바이트 단위로 반환합니다. (대부분의 경우 상위 수준 스포츠 토토 결과을 사용하는 것이 더 편리합니다.pg_total_relation_size또는pg_table_size, 모든 분기의 크기를 합산합니다.) 하나의 인수를 사용하면 관계의 기본 데이터 분기 크기를 반환합니다. 검사할 포크를 지정하기 위해 두 번째 인수를 제공할 수 있습니다.

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

  • 'fsm'여유 공간 지도의 크기를 반환합니다(참조섹션 67.3)가 관계와 연결되어 있습니다.

  • 'vm'가시성 지도의 크기를 반환합니다(참조토토 꽁 머니 : 문서 : 10 : 67.4. 가시성 맵)가 관계와 연결되어 있습니다.

  • '초기화'관계와 관련된 초기화 포크의 크기를 반환합니다(있는 경우).

pg_size_pretty바이트, kB, MB, GB 또는 TB를 적절하게 사용하여 사람이 읽을 수 있는 방식으로 다른 함수 중 하나의 결과 형식을 지정하는 데 사용할 수 있습니다.

pg_size_bytes사람이 읽을 수 있는 형식의 문자열에서 크기(바이트)를 가져오는 데 사용할 수 있습니다. 입력의 단위는 바이트, kB, MB, GB 또는 TB일 수 있으며 대소문자를 구분하지 않고 구문 분석됩니다. 단위를 지정하지 않으면 바이트로 간주됩니다.

참고

함수에 사용되는 단위 kB, MB, GB 및 TBpg_size_pretty그리고pg_size_bytes10의 거듭제곱이 아닌 2의 거듭제곱을 사용하여 정의되므로 1kB는 1024바이트이고 1MB는 ​​1024입니다.2= 1048576바이트 등.

테이블이나 인덱스에서 작동하는 위의 함수는 다음을 허용합니다.regclass인수, 이는 단순히 테이블 또는 인덱스의 OID입니다.pg_class시스템 카탈로그. 그러나 OID를 직접 찾을 필요는 없습니다.regclass데이터 유형의 입력 변환기가 당신을 위해 작업을 수행할 것입니다. 리터럴 상수처럼 보이도록 테이블 이름을 작은따옴표로 묶어서 작성하세요. 일반 취급과의 호환성을 위해SQL이름, 테이블 이름 주위에 큰따옴표가 포함되지 않는 한 문자열은 소문자로 변환됩니다.

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

다음에 표시된 스포츠 토토 결과표 9.85데이터베이스 개체와 연관된 특정 디스크 파일을 식별하는 데 도움을 줍니다.

표 9.85. 데이터베이스 개체 위치 스포츠 토토 결과

이름 반환 유형 설명
pg_relation_filenode(관계 regclass) oid 지정된 관계의 파일 노드 번호
pg_relation_filepath(관계 regclass) 텍스트 지정된 관계의 파일 경로 이름
pg_filenode_relation(테이블스페이스 oid, 파일 노드 oid) regclass 주어진 테이블스페이스 및 파일 노드와 연관된 관계 찾기

pg_relation_filenode테이블, 인덱스, 시퀀스 또는 토스트 테이블의 OID 또는 이름을 승인하고 다음을 반환합니다.파일 노드현재 할당된 번호입니다. 파일 노드는 관계에 사용되는 파일 이름의 기본 구성 요소입니다(참조)PostgreSQL : 문서 : 10 : 67.1. 데이터베이스 토토 사이트 순위 레이아웃자세한 내용은). 대부분의 테이블에서 결과는 다음과 같습니다.pg_class.relfilenode, 그러나 특정 시스템 카탈로그의 경우relfilenode은 0이며 올바른 값을 얻으려면 이 함수를 사용해야 합니다. 뷰와 같이 저장 공간이 없는 관계를 전달하면 함수는 NULL을 반환합니다.

pg_relation_filepath다음과 유사함pg_relation_filenode, 그러나 전체 파일 경로 이름(데이터베이스 클러스터의 데이터 디렉터리에 상대적)을 반환합니다.PGDATA) 관계의.

pg_filenode_relation반대입니다pg_relation_filenode. 주어진 a테이블스페이스OID 및 a파일 노드, 연관된 관계의 OID를 반환합니다. 데이터베이스의 기본 테이블스페이스에 있는 테이블의 경우 테이블스페이스를 0으로 지정할 수 있습니다.

표 9.86데이터 정렬을 관리하는 데 사용되는 스포츠 토토 결과을 나열합니다.

표 9.86. 데이터 정렬 관리 스포츠 토토 결과

이름 반환 유형 설명
pg_collation_actual_version(oid) 텍스트 운영 체제에서 대조의 실제 버전을 반환
pg_import_system_collations(스키마 regnamespace) 정수 운영 체제 데이터 정렬 가져오기

pg_collation_actual_version은 현재 운영 체제에 설치된 데이터 정렬 개체의 실제 버전을 반환합니다. 이 값이의 값과 다른 경우pg_collation.collversion, 그러면 데이터 정렬에 따라 개체를 다시 작성해야 할 수도 있습니다. 또한 참조하세요컬렉션 변경.

pg_import_system_collations시스템 카탈로그에 데이터 정렬을 추가합니다.pg_collation운영 체제에서 찾은 모든 로케일을 기반으로 합니다. 이것이 바로initdb사용; 보다섹션 23.2.2자세한 내용을 확인하세요. 나중에 추가 로케일이 운영 체제에 설치되면 이 스포츠 토토 결과을 다시 실행하여 새 로케일에 대한 데이터 정렬을 추가할 수 있습니다. 의 기존 항목과 일치하는 로캘pg_collation건너뛰게 됩니다. (그러나 운영 체제에 더 이상 존재하지 않는 로캘 기반의 데이터 정렬 개체는 이 함수로 제거되지 않습니다.)스키마매개변수는 일반적으로 다음과 같습니다.pg_catalog, 하지만 필수 사항은 아닙니다. 데이터 정렬은 다른 스키마에도 설치될 수 있습니다. 이 함수는 생성된 새 데이터 정렬 개체의 수를 반환합니다. 이 스포츠 토토 결과의 사용은 슈퍼유저로 제한됩니다.

9.26.8. 인덱스 유지관리 스포츠 토토 결과

표 9.87인덱스 유지 관리 작업에 사용할 수 있는 스포츠 토토 결과을 보여줍니다. 복구 중에는 이러한 스포츠 토토 결과을 실행할 수 없습니다. 이 스포츠 토토 결과의 사용은 수퍼유저와 해당 인덱스의 소유자로 제한됩니다.

표 9.87. 인덱스 유지관리 스포츠 토토 결과

이름 반환 유형 설명
brin_summarize_new_values(색인 regclass) 정수 아직 요약되지 않은 페이지 범위 요약
brin_summarize_range(색인 regclass, 블록번호 비긴트) 정수 아직 요약되지 않은 경우 주어진 블록을 포함하는 페이지 범위를 요약
brin_desummarize_range(색인 regclass, 블록번호 비긴트) 정수 요약된 경우 주어진 블록을 포함하는 페이지 범위를 요약 해제
gin_clean_pending_list(색인 regclass) 비긴트 GIN 보류 목록 항목을 기본 색인 구조로 이동

brin_summarize_new_valuesBRIN 인덱스의 OID 또는 이름을 승인하고 인덱스를 검사하여 현재 인덱스에 의해 요약되지 않은 기본 테이블의 페이지 범위를 찾습니다. 그러한 범위에 대해서는 테이블 페이지를 스캔하여 새로운 요약 인덱스 튜플을 생성합니다. 색인에 삽입된 새 페이지 범위 요약의 수를 반환합니다.brin_summarize_range동일하지만 주어진 블록 번호를 포함하는 범위만 요약한다는 점만 다릅니다.

gin_clean_pending_listGIN 인덱스의 OID 또는 이름을 승인하고 해당 인덱스의 항목을 기본 GIN 데이터 구조로 대량 이동하여 지정된 인덱스의 보류 목록을 정리합니다. 보류 목록에서 제거된 페이지 수를 반환합니다. 인수가 다음을 사용하여 작성된 GIN 인덱스인 경우 주의하세요.빠른 업데이트옵션이 비활성화되면 정리가 발생하지 않으며 반환 값은 0입니다. 인덱스에 보류 목록이 없기 때문입니다. 참조하세요섹션 64.4.1그리고PostgreSQL : 문서 : 10 : 64.5.배트맨 토토 팁과 요령보류 목록에 대한 자세한 내용 및빠른 업데이트옵션.

9.26.9. 일반 파일 액세스 스포츠 토토 결과

다음에 표시된 스포츠 토토 결과표 9.88서버를 호스팅하는 시스템의 파일에 대한 기본 액세스를 제공합니다. 데이터베이스 클러스터 디렉터리 내의 파일만 및로그_디렉토리접근할 수 있습니다. 클러스터 디렉터리에 있는 파일의 상대 경로와 일치하는 경로를 사용하세요.log_directory로그 파일 구성 설정. 이 스포츠 토토 결과의 사용은 달리 명시되지 않는 한 슈퍼유저로 제한됩니다.

표 9.88. 일반 파일 액세스 스포츠 토토 결과

이름 반환 유형 설명
pg_ls_dir(dirname 텍스트 [, missing_ok 부울, include_dot_dirs 부울]) 텍스트 집합 디렉토리의 내용을 나열합니다.
pg_ls_logdir() 레코드 집합 로그 디렉토리에 있는 파일의 이름, 크기 및 마지막 수정 시간을 나열합니다. 의 구성원에게 액세스 권한이 부여됩니다.pg_monitor역할이며 수퍼유저가 아닌 다른 역할에 부여될 수 있습니다.
pg_ls_waldir() 레코드 세트 WAL 디렉토리에 있는 파일의 이름, 크기 및 마지막 수정 시간을 나열합니다. 의 구성원에게 액세스 권한이 부여됩니다.pg_monitor역할이며 수퍼유저가 아닌 다른 역할에 부여될 수 있습니다.
pg_read_file(파일 이름 텍스트 [, 오프셋 비긴트, 길이 비긴트 [, missing_ok 부울] ]) 텍스트 텍스트 파일의 내용을 반환합니다.
pg_read_binary_file(파일 이름 텍스트 [, 오프셋 비긴트, 길이 비긴트 [, missing_ok 부울] ]) 바이테아 파일의 내용을 반환합니다.
pg_stat_file(파일 이름 텍스트[, missing_ok 부울]) 기록 파일에 대한 정보를 반환합니다.

이러한 스포츠 토토 결과 중 일부는 선택사항을 취합니다.missing_ok매개변수는 파일이나 디렉터리가 존재하지 않을 때의 동작을 지정합니다. 만약에사실, 함수는 NULL을 반환합니다(예외pg_ls_dir, 빈 결과 세트를 반환함). 만약에거짓, 오류가 발생합니다. 기본값은거짓.

pg_ls_dir지정된 디렉토리에 있는 모든 파일(및 디렉토리 및 기타 특수 파일)의 이름을 반환합니다. 그만큼include_dot_dirs여부를 나타냄.그리고..이 결과 세트에 포함됩니다. 기본값은 제외하는 것입니다(거짓), 하지만 다음과 같은 경우에는 이를 포함하는 것이 유용할 수 있습니다.missing_ok이다, 존재하지 않는 디렉토리와 빈 디렉토리를 구별합니다.

pg_ls_logdir로그 디렉터리에 있는 각 파일의 이름, 크기 및 마지막 수정 시간(mtime)을 반환합니다. 기본적으로 슈퍼유저와의 구성원만pg_monitor역할은 이 스포츠 토토 결과을 사용할 수 있습니다. 다음을 사용하여 다른 사람에게 액세스 권한을 부여할 수 있습니다.부여.

pg_ls_waldirWAL(미리 쓰기 로그) 디렉터리에 있는 각 파일의 이름, 크기 및 마지막 수정 시간(mtime)을 반환합니다. 기본적으로 슈퍼유저와 회원만pg_monitor역할은 이 스포츠 토토 결과을 사용할 수 있습니다. 다음을 사용하여 다른 사람에게 액세스 권한을 부여할 수 있습니다.부여.

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

pg_read_binary_file다음과 유사함pg_read_file, 단, 결과는 다음과 같습니다.바이테아값; 따라서 인코딩 확인이 수행되지 않습니다. 와 결합하여convert_from함수, 이 함수는 지정된 인코딩으로 파일을 읽는 데 사용할 수 있습니다.

SELECT Convert_from(pg_read_binary_file('file_in_utf8.txt'), 'UTF8');

pg_stat_file파일 크기, 마지막으로 액세스한 타임스탬프, 마지막으로 수정한 타임스탬프, 마지막 파일 상태 변경 타임스탬프(Unix 플랫폼에만 해당), 파일 생성 타임스탬프(Windows에만 해당) 및 a를 포함하는 레코드를 반환합니다.부울디렉토리인지 여부를 나타냅니다. 일반적인 사용법은 다음과 같습니다:

SELECT * FROM pg_stat_file('파일 이름');
SELECT (pg_stat_file('파일 이름')).수정;

9.26.10. 권고 잠금 스포츠 토토 결과

다음에 표시된 스포츠 토토 결과표 9.89권고 잠금을 관리합니다. 이러한 스포츠 토토 결과의 올바른 사용에 대한 자세한 내용은 다음을 참조하세요.섹션 13.3.5.

표 9.89. 권고 잠금 스포츠 토토 결과

이름 반환 유형 설명
pg_advisory_lock( 비긴트) 공허 독점 세션 수준 권고 잠금 획득
pg_advisory_lock(키1 int, 키2 int) 무효 독점 세션 수준 자문 잠금 획득
pg_advisory_lock_shared( 비긴트) 공허 공유 세션 수준 권고 잠금 획득
pg_advisory_lock_shared(키1 int, 키2 int) 공허 공유 세션 수준 권고 잠금 획득
pg_advisory_unlock( 비긴트) 부울 독점 세션 수준 권고 잠금 해제
pg_advisory_unlock(키1 int, 키2 int) 부울 독점 세션 수준 권고 잠금 해제
pg_advisory_unlock_all() 공허 현재 세션이 보유하고 있는 모든 세션 수준 권고 잠금을 해제
pg_advisory_unlock_shared( bigint) 부울 공유 세션 수준 권고 잠금 해제
pg_advisory_unlock_shared(키1 int, 키2 int) 부울 공유 세션 수준 권고 잠금 해제
pg_advisory_xact_lock( bigint) 공허 독점적인 거래 수준 자문 잠금 획득
pg_advisory_xact_lock(키1 int, 키2 int) 공허 독점적인 거래 수준 자문 잠금 획득
pg_advisory_xact_lock_shared( 비긴트) 공허 공유 트랜잭션 수준 자문 잠금 획득
pg_advisory_xact_lock_shared(키1 int, 키2 int) 공허 공유 트랜잭션 수준 자문 잠금 획득
pg_try_advisory_lock( 비긴트) 부울 가능한 경우 독점 세션 수준 권고 잠금 획득
pg_try_advisory_lock(키1 int, 키2 int) 부울 가능한 경우 독점 세션 수준 권고 잠금 획득
pg_try_advisory_lock_shared( bigint) 부울 가능한 경우 공유 세션 수준 권고 잠금 획득
pg_try_advisory_lock_shared(키1 int, 키2 int) 부울 가능한 경우 공유 세션 수준 권고 잠금 획득
pg_try_advisory_xact_lock( 비긴트) 부울 가능한 경우 독점 거래 수준 권고 잠금 획득
pg_try_advisory_xact_lock(키1 int, 키2 int) 부울 가능한 경우 독점 거래 수준 권고 잠금 획득
pg_try_advisory_xact_lock_shared( 비긴트) 부울 가능한 경우 공유 트랜잭션 수준 권고 잠금 획득
pg_try_advisory_xact_lock_shared(키1 int, 키2 int) 부울 가능한 경우 공유 트랜잭션 수준 권고 잠금 획득

pg_advisory_lock단일 64비트 키 값 또는 두 개의 32비트 키 값으로 식별할 수 있는 애플리케이션 정의 리소스를 잠급니다(이 두 키 공간은 겹치지 않습니다). 다른 세션이 이미 동일한 리소스 식별자에 대한 잠금을 보유하고 있는 경우 이 함수는 리소스를 사용할 수 있을 때까지 기다립니다. 자물쇠는 독점적입니다. 여러 잠금 요청이 스택되므로 동일한 리소스가 세 번 잠긴 경우 다른 세션에서 사용할 수 있도록 해제하려면 세 번 잠금 해제해야 합니다.

pg_advisory_lock_shared다음과 동일하게 작동합니다pg_advisory_lock, 단, 잠금은 공유 잠금을 요청하는 다른 세션과 공유될 수 있습니다. 전용 사물함만 잠겨 있습니다.

pg_try_advisory_lock다음과 유사함pg_advisory_lock, 단, 이 함수는 잠금이 사용 가능해질 때까지 기다리지 않습니다. 즉시 잠금을 획득하고 반환됩니다.또는 반환거짓잠금을 즉시 획득할 수 없는 경우.

pg_try_advisory_lock_shared다음과 동일하게 작동합니다pg_try_advisory_lock, 단, 배타적 잠금이 아닌 공유 잠금을 획득하려고 시도하는 경우는 제외됩니다.

pg_advisory_unlock이전에 획득한 독점 세션 수준 권고 잠금을 해제합니다. 돌아온다잠금이 성공적으로 해제된 경우. 잠금이 유지되지 않은 경우 반환됩니다.거짓그리고 또한 서버에서 SQL 경고가 보고됩니다.

pg_advisory_unlock_shared다음과 동일하게 작동합니다pg_advisory_unlock, 단, 공유 세션 수준 권고 잠금을 해제하는 경우는 제외됩니다.

pg_advisory_unlock_all현재 세션이 보유하고 있는 모든 세션 수준 권고 잠금을 해제합니다. (이 함수는 클라이언트가 비정상적으로 연결을 끊더라도 세션 종료 시 암시적으로 호출됩니다.)

pg_advisory_xact_lock다음과 동일하게 작동합니다pg_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_shared, 잠금을 제외하고 획득한 경우 현재 트랜잭션이 끝나면 자동으로 해제되며 명시적으로 해제할 수 없습니다.