이 문서는 지원되지 않는 버전의 PostgreSQL 용입니다.
당신은에 대해 같은 페이지를 보려고 할 수 있습니다PostgreSQL : 문서 : 17 : 19.6. 스포츠 토토 베트맨버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

19.6. 복제

이 설정은 내장의 동작을 제어합니다스트리밍 복제기능 (참조섹션 26.2.5). 서버는 마스터 또는 윈 토토 서버입니다. 마스터는 데이터를 보낼 수 있지만 윈 토토는 항상 복제 된 데이터 수신기입니다. 계단식 복제시 (참조섹션 26.2.7) 사용되면 윈 토토 서버도 수신자뿐만 아니라 발신자가 될 수도 있습니다. 매개 변수는 주로 전송 및 윈 토토 서버를위한 것이지만 일부 매개 변수는 마스터 서버에서만 의미합니다. 필요한 경우 문제없이 클러스터마다 설정이 다를 수 있습니다.

19.6.1. 서버 보내기

이 매개 변수는 복제 데이터를 하나 이상의 윈 토토 서버로 전송하는 모든 서버에서 설정할 수 있습니다. 마스터는 항상 전송 서버이므로 이러한 매개 변수는 항상 마스터에 설정해야합니다. 윈 토토가 마스터가 된 후에이 매개 변수의 역할과 의미는 변하지 않습니다.

max_wal_senders(정수)

윈 토토 서버 또는 스트리밍베이스 백업 클라이언트에서 최대 동시 연결 수를 지정합니다 (즉, WAL 발신자 프로세스를 동시에 실행하는 최대 수). 기본값은 10입니다. 값 0은 복제가 비활성화되었음을 의미합니다. WAL 발신자 프로세스는 총 연결 수에 계산 되므로이 매개 변수의 값은보다 작아야합니다.max_connections마이너스SuperUser_Reserved_Connections. 갑작스러운 스트리밍 클라이언트 단절은 타임 아웃에 도달 할 때까지 고아 연결 슬롯을 뒤로 남겨 둘 수 있으므로이 매개 변수는 최대 예상 클라이언트 수보다 약간 높아야하므로 연결 해제 된 클라이언트가 즉시 다시 연결될 수 있습니다. 이 매개 변수는 서버 시작시에만 설정할 수 있습니다. 또한,Wal_level로 설정해야합니다복제그 이상 윈 토토 서버에서 연결을 허용 할 수 있습니다.

max_replication_slots(Integer)

최대 복제 슬롯 수를 지정합니다 (참조섹션 26.2.6) 서버가 지원할 수 있습니다. 기본값은 10입니다.이 매개 변수는 서버 시작시에만 설정할 수 있습니다. 현재 기존 복제 슬롯의 수보다 낮은 값으로 설정하면 서버가 시작되지 않습니다. 또한,Wal_level로 설정해야합니다복제이상 복제 슬롯을 사용할 수 있도록 하이.

가입자 측면에서 얼마나 많은 복제 기원을 지정합니다 (참조PostgreSQL : 문서 : 11 : 50 장. 토토 사이트 순위 진행 추적)는 동시에 추적 될 수 있으며 서버에서 얼마나 많은 논리적 복제 독비를 생성 할 수 있는지 효과적으로 제한 할 수 있습니다. 현재 추적 된 복제 원산지 수보다 낮은 값으로 설정, 아님스포츠 토토 사이트 : 문서 : 11 :) 서버가 시작되는 것을 방지합니다.

Wal_keep_segments(정수)

과거 로그 파일 세그먼트의 최소 수를 지정합니다.PG_WAL디렉토리, 대기 서버가 스트리밍 복제를 위해이를 가져와야하는 경우. 각 세그먼트는 일반적으로 16 메가 바이트입니다. 전송 서버에 연결된 대기 서버가 이상으로 떨어지면Wal_keep_segments세그먼트, 전송 서버는 대기에 필요한 WAL 세그먼트를 제거 할 수 있으며,이 경우 복제 연결이 종료됩니다. 다운 스트림 연결도 결국 실패합니다. (그러나 WAL 아카이브가 사용중인 경우 아카이브에서 세그먼트를 가져와 대기 서버가 복구 할 수 있습니다.)

이것은 유지 된 최소 세그먼트 수만 설정합니다PG_WAL; 이 시스템은 WAL 보관에 대한 더 많은 세그먼트를 유지하거나 체크 포인트에서 복구해야 할 수도 있습니다. 만약에Wal_Keep_Segments| 0 (기본값), 시스템은 윈 토토 목적으로 추가 세그먼트를 유지하지 않으므로 윈 토토 서버에 사용할 수있는 이전 월 세그먼트의 수는 이전 체크 포인트의 위치 및 WAL 아카이브 상태의 함수입니다. 이 매개 변수는에서만 설정할 수 있습니다.postgresql.conf파일 또는 서버 명령 줄에.

Wal_Sender_Timeout(Integer)

지정된 밀리 초보다 비활성화 된 복제 연결 종료. 전송 서버가 대기 충돌 또는 네트워크 중단을 감지하는 데 유용합니다. 0의 값은 시간 초과 메커니즘을 비활성화합니다. 이 매개 변수는에서만 설정할 수 있습니다.postgresql.conf파일 또는 서버 명령 줄에. 기본값은 60 초입니다.

track_commit_timestamp(부울)

거래 시간을 기록하십시오. 이 매개 변수는에서만 설정할 수 있습니다.postgresql.conf파일 또는 서버 명령 줄에. 기본값은입니다.OFF.

19.6.2. 마스터 서버

이 매개 변수는 하나 이상의 대기 서버로 복제 데이터를 보내는 마스터/기본 서버에서 설정할 수 있습니다. 이러한 매개 변수 외에도Wal_level마스터 서버에서 적절하게 설정해야하며 선택적으로 WAL 아카이빙도 활성화 될 수 있습니다 (참조섹션 19.5.3). 윈 토토 서버에서 이러한 매개 변수의 값은 관련이 없지만 윈 토토 서버가 마스터가 될 가능성을 준비하기 위해 여기에 설정할 수 있습니다.

syn윈 토토ronous_standby_names(String)

지원할 수있는 윈 토토 서버 목록을 지정동기 복제, 설명대로섹션 26.2.8. 하나 이상의 활성 동기 윈 토토가있을 것입니다. 이 윈 토토 서버가 데이터 수신을 확인한 후 커밋을 기다리는 거래는 진행될 수 있습니다. 동기식 윈 토토는이 목록에 이름이 표시되고 현재 실시간으로 데이터를 연결하고 스트리밍하는 윈 토토가 될 것입니다 (스트리밍inPG_STAT_REPLICATION보기). 둘 이상의 동기 윈 토토 윈 토토를 지정하면 매우 높은 가용성과 데이터 손실에 대한 보호를 허용 할 수 있습니다.

이 목적을위한 윈 토토 서버의 이름은입니다.application_name대기 연결 정보에 설정된 대기 설정. 물리적 복제 대기의 경우에서 설정해야합니다.Primary_Conninfo설정복구 .conf; 기본값은Walreceiver. 논리적 복제의 경우 구독의 연결 정보에서 설정할 수 있으며 기본적으로 구독 이름으로 설정할 수 있습니다. 다른 복제 스트림 소비자의 경우 문서를 참조하십시오.

이 매개 변수는 다음 구문 중 하나를 사용하여 윈 토토 서버 목록을 지정합니다.

[첫 번째]num_sync(standby_name[, ...])
어느num_sync(standby_name[, ...])standby_name[, ...]

여기서num_sync거래가 답장을 기다려야하는 동기식 윈 토토 수는입니다.standby_name윈 토토 서버의 이름입니다.첫 번째andany나열된 서버에서 동기식 윈 토토를 선택하는 메소드를 지정합니다.

키워드첫 번째,num_sync, 우선 순위 기반 동기 복제를 지정하고 트랜잭션 커밋이 WAL 레코드가 복제 될 때까지 대기합니다num_sync우선 순위에 따라 선택된 동기식 대기. 예를 들어, 설정첫 3 (S1, S2, S3, S4)윈 토토 서버에서 선택한 3 개의 우선 순위가 높은 3 개의 윈 토토에서 응답을 기다릴 것입니다S1, S2, S3andS4. 목록의 앞부분에서 이름이 표시되는 대기는 우선 순위가 높으며 동기식으로 간주됩니다. 이 목록의 뒷부분에 나타나는 다른 대기 서버는 잠재적 동기식 대기를 나타냅니다. 어떤 이유로 든 현재 동기식 대기 중 하나가 분리되면 다음 가장 높은 우선 순위 대기로 즉시 교체됩니다. 키워드첫 번째선택 사항입니다.

키워드Any,num_sync, 쿼럼 기반 동기 복제를 지정하고 트랜잭션 커밋이 WAL 레코드가 복제 될 때까지 기다리게합니다적어도 NUM_SYNC나열된 대기. 예를 들어, 설정3 (S1, S2, S3, S4)최소한 3 개의 윈 토토 중가되면 각 커밋이 진행됩니다.S1, S2, S3andS4답장.

첫 번째andAny사례에 민감합니다. 이러한 키워드가 대기 서버의 이름으로 사용되는 경우standby_name두 번 인용해야합니다.

세 번째 구문은 전에 사용되었습니다PostgreSQL버전 9.6이며 여전히 지원됩니다. 의 첫 번째 구문과 동일합니다첫 번째andnum_sync1과 같습니다. 예를 들어첫 1 (S1, S2)andS1, S2같은 의미가 있습니다 : 하나S1또는S2동기 윈 토토로 선택되었습니다.

특별 항목*윈 토토 이름과 일치합니다.

대기 이름의 독창성을 시행하는 메커니즘이 없습니다. 복제의 경우 일치하는 대기 중 하나는 우선 순위가 높지만 정확히 어떤 것이 불확실한 지.

Note

standby_name그렇지 않으면 유효한 SQL 식별자의 형태가 있어야합니다.*. 필요한 경우 이중 인용문을 사용할 수 있습니다. 하지만standby_names는 윈 토토 애플리케이션 이름과 비교됩니다. 두 번 인용하든 아니든.

여기에 동기 대기 이름이 지정되지 않으면 동기 복제가 활성화되지 않고 트랜잭션 커밋이 복제를 기다리지 않습니다. 기본 구성입니다. 동기 복제가 활성화 되더라도 개별 트랜잭션은를 설정하여 복제를 기다리지 않도록 구성 될 수 있습니다.syn윈 토토ronous_commit매개 변수 to로컬또는OFF.

이 매개 변수는에서만 설정할 수 있습니다.postgresql.conf파일 또는 서버 명령 줄에.

VACUUM_DEFER_CLEANUP_AGE(Integer)

거래 수를 지정합니다진공andhot업데이트Dead Row 버전의 정리를 연기합니다. 기본값은 거래 제로 거래입니다. 즉, Dead Row 버전은 가능한 빨리 제거 할 수 있습니다. hot 대기 서버를 지원하는 기본 서버에서이를 0이 아닌 값으로 설정할 수 있습니다.PostgreSQL : 문서 : 11 : 26.5. 뜨거운 배트맨 토토. 이를 통해 초기 행의 정리로 인해 충돌이 발생하지 않고 대기의 쿼리가 완료 될 수 있습니다. 그러나 값은 기본 서버에서 발생하는 쓰기 트랜잭션 수의 관점에서 측정되므로 대기 쿼리를 위해 얼마나 많은 유예 시간을 사용할 수 있는지 예측하기가 어렵습니다. 이 매개 변수는에서만 설정할 수 있습니다.postgresql.conf파일 또는 서버 명령 줄에.

또한 설정을 고려해야합니다hot_standby_feedback이 매개 변수를 사용하는 대안으로 윈 토토 서버에서.

이것은 |Old_snapShot_threshold.

19.6.3. 대기 서버

이러한 설정은 복제 데이터를 수신하는 대기 서버의 동작을 제어합니다. 마스터 서버의 값은 관련이 없습니다.

hot_standby(부울)

회복 중에 쿼리를 연결하고 실행할 수 있는지 여부를 지정합니다.PostgreSQL : 문서 : 11 : 26.5. 뜨거운 배트맨 토토. 기본값은입니다.on. 이 매개 변수는 서버 시작시에만 설정할 수 있습니다. 아카이브 복구 또는 대기 모드에서만 영향을 미칩니다.

max_standby_archive_delay(Integer)

핫 스탠드비가 활성화되면이 매개 변수는 윈 토토 서버가 윈 토토중인 WAL 항목과 충돌하는 윈 토토 쿼리를 취소하기 전에 윈 토토 서버가 얼마나 오래 기다려야하는지를 결정합니다.섹션 26.5.2. max_standby_archive_delayWAL 데이터를 WAL 아카이브에서 읽을 때 적용되므로 현재는 아닙니다. 기본값은 30 초입니다. 단위는 지정되지 않은 경우 밀리 초입니다. -1 값을 사용하면 대기가 충돌하는 쿼리가 완료 될 때까지 대기가 영원히 기다릴 수 있습니다. 이 매개 변수는에서만 설정할 수 있습니다.postgresql.conf파일 또는 서버 명령 줄에.

참고max_standby_archive_delay쿼리가 취소 전에 실행할 수있는 최대 시간과 동일하지 않습니다. 오히려 WAL 세그먼트의 데이터를 적용 할 수있는 최대 총 시간입니다. 따라서 하나의 쿼리가 WAL 세그먼트 초반에 상당한 지연이 발생하면 후속 충돌 쿼리는 유예 시간이 훨씬 적을 것입니다.

max_standby_streaming_delay(Integer)

핫 스탠드비가 활성화되면이 매개 변수는 윈 토토 서버가 윈 토토중인 WAL 항목과 충돌하는 윈 토토 쿼리를 취소하기 전에 윈 토토 서버가 얼마나 오래 기다려야하는지를 결정합니다.섹션 26.5.2. max_standby_streaming_delay스트리밍 복제를 통해 WAL 데이터를 수신 할 때 적용됩니다. 기본값은 30 초입니다. 단위는 지정되지 않은 경우 밀리 초입니다. -1 값을 사용하면 대기가 충돌하는 쿼리가 완료 될 때까지 대기가 영원히 기다릴 수 있습니다. 이 매개 변수는에서만 설정할 수 있습니다.postgresql.conf파일 또는 서버 명령 줄에.

참고max_standby_streaming_delay취소 전에 실행할 수있는 최대 시간과 동일하지 않습니다. 오히려 기본 서버에서 수신 된 후 WAL 데이터를 적용 할 수있는 최대 총 시간입니다. 따라서 하나의 쿼리가 상당한 지연이 발생하면 윈 토토 서버가 다시 따라 잡을 때까지 후속 충돌 쿼리가 유예 시간이 훨씬 줄어 듭니다.

Wal_receiver_status_interval(정수)

대기에서 WAL 수신기 프로세스의 최소 주파수를 지정하여 복제 진행에 대한 정보를 기본 또는 상류 대기로 보낼 수 있습니다.pg_stat_replication보기. 대기는 마지막으로 쓰여진 쓰기 로그 위치, 마지막으로 디스크로 플러시 된 위치 및 최종 위치가 적용된 위치를보고합니다. 이 매개 변수의 값은 보고서 사이에서 초의 최대 간격입니다. 쓰기 또는 플러시 위치가 변경 될 때마다 또는 최소한이 매개 변수에서 지정된대로 업데이트가 전송됩니다. 따라서, 적용 위치는 실제 위치 뒤에 약간 지연 될 수있다. 이 매개 변수를 0으로 설정하면 상태 업데이트가 완전히 비활성화됩니다. 이 매개 변수는에서만 설정할 수 있습니다.postgresql.conf파일 또는 서버 명령 줄에. 기본값은 10 초입니다.

hot_standby_feedback(부울)

핫 스탠드가 현재 대기에서 실행중인 쿼리에 대한 기본 또는 업스트림 대기에 피드백을 보낼지 여부를 지정합니다. 이 매개 변수는 정리 레코드로 인한 쿼리 암을 제거하는 데 사용될 수 있지만 일부 워크로드의 경우 기본에 데이터베이스가 부풀어 오를 수 있습니다. 피드백 메시지는 당 한 번 이상 자주 전송되지 않습니다.Wal_receiver_status_interval. 기본값은입니다.off. 이 매개 변수는에서만 설정할 수 있습니다.postgresql.conf파일 또는 서버 명령 줄에.

계단식 복제가 사용되는 경우 피드백이 1 차에 도달 할 때까지 피드백이 상류로 전달됩니다. 대기는 상류를 통과하는 것 외에 다른 피드백을 사용하지 않습니다.

이 설정은의 동작을 무시하지 않습니다.Old_snapshot_threshold1 차; 기본 연령 임계 값을 초과하는 윈 토토의 스냅 샷은 무효화되어 윈 토토에서 트랜잭션이 취소됩니다. 이건이기 때문입니다.Old_snapShot_threshold| 죽은 행이 팽창에 기여할 수있는 시간에 절대 제한을 제공하기위한 것이며, 이는 윈 토토의 구성으로 인해 위반 될 것입니다.

Wal_Receiver_Timeout(정수)

지정된 밀리 초보다 비활성화 된 복제 연결 종료. 이는 수신 대기 서버가 기본 노드 충돌 또는 네트워크 정전을 감지하는 데 유용합니다. 0의 값은 시간 초과 메커니즘을 비활성화합니다. 이 매개 변수는에서만 설정할 수 있습니다.postgresql.conf파일 또는 서버 명령 줄에. 기본값은 60 초입니다.

Wal_retrieve_retry_interval(정수)

WAL 데이터가 소스에서 사용할 수 없을 때 대기 서버가 기다려야 할 시간을 지정하십시오 (스트리밍 복제, 로컬PG_WAL34220_34315postgresql.conf파일 또는 서버 명령 줄에. 기본값은 5 초입니다. 지정되지 않은 경우 단위는 밀리 초입니다.

이 매개 변수는 복구 노드가 새로운 WAL 데이터를 사용할 때까지 기다릴 시간을 제어 해야하는 구성에 유용합니다. 예를 들어, 아카이브 복구 에서이 매개 변수의 값을 줄임으로써 새로운 WAL 로그 파일의 감지에서 복구를보다 반응시킬 수 있습니다. WAL 활동이 낮은 시스템에서는 WAL 아카이브에 액세스하는 데 필요한 요청의 양이 줄어 듭니다. 예를 들어 인프라에 액세스하는 시간이 고려되는 클라우드 환경에서 유용한 것..

19.6.4. 가입자

이 설정은 논리적 복제 가입자의 동작을 제어합니다. 출판사의 가치는 관련이 없습니다.

참고Wal_Receiver_Timeout, Wal_receiver_status_intervalWal_Retrieve_Retry_interval구성 매개 변수는 논리 복제 작업자에게도 영향을 미칩니다.

max_logical_replication_workers(int)

Specifies maximum number of logical replication workers. 여기에는 적용 근로자와 테이블 동기화 작업자가 모두 포함됩니다.

논리 복제 작업자는 정의 된 수영장에서 가져옵니다max_worker_processes.

기본값은 4입니다.이 매개 변수는 서버 시작시에만 설정할 수 있습니다.

max_sync_workers_per_subscription(Integer)

구독 당 최대 동기화 작업자 수. 이 매개 변수는 구독 초기화 중 또는 새 테이블이 추가 될 때 초기 데이터 사본의 병렬 처리량을 제어합니다.

현재 테이블 당 하나의 동기화 작업자 만있을 수 있습니다.

동기화 작업자는 정의 된 풀에서 가져옵니다max_logical_replication_workers.

기본값은 2입니다.이 매개 변수는에서만 설정할 수 있습니다.postgresql.conf파일 또는 서버 명령 줄에.