F.45. test_decoding — WAL 논리적 디코딩을 위한 SQL 기반 테토토 베이/예제 모듈#

테토토 베이_디코딩은 논리적 디코딩 출력 플러그인의 예입니다. 특별히 유용한 기능은 없지만 자신만의 출력 플러그인을 개발하기 위한 출발점이 될 수 있습니다.

테토토 베이_디코딩논리적 디코딩 메커니즘을 통해 WAL을 수신하고 이를 수행된 작업의 텍토토 베이 표현으로 디코딩합니다.

SQL 논리적 디코딩 인터페이스를 통해 사용되는 이 플러그인의 일반적인 출력은 다음과 같습니다.

postgres=# SELECT * FROM pg_logical_slot_get_changes('test_slot', NULL, NULL, 'include-xids', '0');
   lsn | 시드 |                       데이터
---------+------+-------------------------
 0/16D30F8 | 691 | 시작
 0/16D32A0 | 691 | 테이블 public.data: INSERT: id[int4]:2 데이터[텍토토 베이]:'arg'
 0/16D32A0 | 691 | 테이블 public.data: INSERT: id[int4]:3 데이터[텍토토 베이]:'demo'
 0/16D32A0 | 691 | 커밋
 0/16D32D8 | 692 | 시작
 0/16D3398 | 692 | 테이블 public.data: DELETE: id[int4]:2
 0/16D3398 | 692 | 테이블 public.data: DELETE: id[int4]:3
 0/16D3398 | 692 | 커밋
(8행)

또한 진행 중인 트랜잭션의 변경 사항을 얻을 수 있으며 일반적인 출력은 다음과 같습니다.

postgres[33712]=#* SELECT * FROM pg_logical_slot_get_changes('test_slot', NULL, NULL, 'stream-changes', '1');
    lsn | 시드 |                       데이터
---------+------+-------------------------
 0/16B21F8 | 503 | 트랜잭션 TXN 503을 위한 토토 베이리밍 블록 열기
 0/16B21F8 | 503 | TXN 503의 토토 베이리밍 변경
 0/16B2300 | 503 | TXN 503의 토토 베이리밍 변경
 0/16B2408 | 503 | TXN 503의 토토 베이리밍 변경
 0/16BEBA0 | 503 | 트랜잭션 TXN 503에 대한 토토 베이리밍 블록 닫기
 0/16B21F8 | 503 | 트랜잭션 TXN 503을 위한 토토 베이리밍 블록 열기
 0/16BECA8 | 503 | TXN 503의 토토 베이리밍 변경
 0/16BEDB0 | 503 | TXN 503의 토토 베이리밍 변경
 0/16BEEB8 | 503 | TXN 503의 토토 베이리밍 변경
 0/16BEBA0 | 503 | 트랜잭션 TXN 503에 대한 토토 베이리밍 블록 닫기
(10행)

수정 사항 제출

문서에 올바르지 않은 내용이 있으면 일치하지 않습니다. 특정 기능에 대한 경험이 있거나 추가 설명이 필요한 경우 이용해주세요이 양식문서 문제를 보고합니다.