이 문서는 지원되지 않는 버전의 PostgreSQL 용입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다PostgreSQL : 문서 : 17 : 53.5. 논리 스트리밍 복제 와이즈 토토버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

54.5.논리 스트리밍 복제 토토 꽁 머니#

이 섹션은 논리적 복제 토토 꽁 머니을 설명합니다.start_replication 슬롯 slot_name 논리복제 명령.

논리 스트리밍 복제 프로토콜은 물리적 스트리밍 복제 프로토콜의 프리미티브를 구축합니다.

PostgreSQL논리 디코딩은 출력 플러그인을 지원합니다.pgoutput내장 논리 복제에 사용되는 표준이라는 표준입니다.

54.5.1.논리 스트리밍 복제 매개 변수#

사용start_replication명령,pgoutput다음 옵션을 수락합니다.

proto_version

프로토콜 버전. 현재 버전1,2,34지원됩니다. 유효한 버전이 필요합니다.

버전2서버 버전 14 이상에서만 지원되며 대규모 진행 중 트랜잭션을 스트리밍 할 수 있습니다.

버전3서버 버전 15 이상에서만 지원되며 2 단계 커밋을 스트리밍 할 수 있습니다.

버전4서버 버전 16 이상에서만 지원되며, 대규모 진행 중 트랜잭션 스트림을 병렬로 적용 할 수 있습니다..

publication_names

구독 할 출판물 이름 목록 (수신 변경). 개별 간행물 이름은 표준 객체 이름으로 취급되며 필요와 동일하게 인용 할 수 있습니다.

binary

이진 전송 모드를 사용하는 부울 옵션. 이진 모드는 텍스트 모드보다 빠르지 만 약간 덜 강력합니다.

메시지

부울 옵션이 작성한 메시지를 보낼 수있는 부울 옵션PG_LOGICAL_EMIT_MESSAGE.

스트리밍

부울 옵션은 진행 중 거래 스트리밍을 가능하게합니다. 병렬화에 사용할 메시지가 포함 된 추가 정보를 보낼 수 있도록 추가 가치 "병렬"을 허용합니다.

Two_Phase

2 상 트랜잭션을 활성화하는 부울 옵션. 최소 프로토콜 버전 3을 켜려면 필요합니다.

원산지

원산지별로 변경 사항을 보내는 옵션. 가능한 값은없음원산지가없는 변경 사항 만 보내려면any원점에 관계없이 변경 사항을 보내려면. 복제 노드간에 루프 (동일한 데이터의 무한 복제)를 피하는 데 사용할 수 있습니다.

54.5.2.논리 복제 프로토콜 메시지#

개별 프로토콜 메시지는 다음 하위 섹션에서 설명합니다. 개별 메시지는에 설명되어 있습니다.PostgreSQL : 문서 : 개발 : 54.9. 논리 복제 스포츠 토토 형식.

모든 최상위 프로토콜 메시지는 메시지 유형 바이트로 시작합니다. 코드로 캐릭터로 표시되지만 이것은 인코딩이 관련된 서명 된 바이트입니다.

스트리밍 복제 프로토콜은 메시지 길이를 제공하기 때문에 최상위 프로토콜 메시지가 헤더에 길이를 포함 할 필요가 없습니다..

54.5.3.논리 복제 프로토콜 메시지 흐름#

을 제외하고start_replication명령 및 재생 진행 메시지, 모든 정보는 백엔드에서 프론트 엔드로만 흐릅니다.

논리적 복제 프로토콜은 개별 트랜잭션을 하나씩 보냅니다. 이는 한 쌍의 시작과 커밋 메시지 사이의 모든 메시지가 동일한 트랜잭션에 속함을 의미합니다.

모든 전송 트랜잭션에는 0 이상의 DML 메시지가 포함됩니다 (삽입, 업데이트, 삭제). 계단식 설정의 경우 원점 메시지가 포함될 수도 있습니다.

모든 DML 메시지에는 관련 OID가 포함되어 있으며 게시자의 관계를 식별합니다. 주어진 관계 OID에 대한 첫 번째 DML 메시지 전에 해당 관계의 스키마를 설명하는 관계 메시지가 전송됩니다.

관계 메시지는 OID로 열 유형을 식별합니다. 내장 유형의 경우 클라이언트가 해당 유형 OID를 로컬로 찾을 수 있다고 가정하므로 추가 데이터가 필요하지 않습니다.