본문으로 건너뛰기

3.1 pg_basebackup

pg_basebackup은 실행 중인 PostgreSQL cluster 전체의 physical backup을 replication protocol로 받습니다. 개별 database나 table만 선택할 수 없습니다.

pg_basebackup \
--host=db.internal \
--username=backup \
--pgdata=/backup/base/20260901 \
--format=plain \
--wal-method=stream \
--progress \
--checkpoint=spread

Backup role에는 REPLICATION 권한이 필요하고 pg_hba.conf, max_wal_senders가 허용해야 합니다. Password는 .pgpass나 secret mechanism으로 전달합니다.

--wal-method=stream은 backup 중 필요한 WAL을 별도 replication connection으로 받습니다. none을 사용할 때는 archive에서 필요한 WAL이 완전하게 제공돼야 합니다.

운영 영향

  • Source read I/O와 network throughput
  • Checkpoint 요청
  • WAL sender 사용
  • Backup 중 생성되는 WAL 보존
  • Tablespace 경로 처리

--max-rate로 전송률을 제한할 수 있지만 목표 backup window와 균형을 잡습니다. Backup 완료 뒤 manifest와 WAL 존재를 확인하고 격리된 target에서 start test를 수행합니다.

참고: pg_basebackup