Docs
PostgreSQL의 내부 구조와 운영을 정리하는 노트입니다. 좌측 사이드바에서 챕터를 선택해 읽거나, 아래 차례에서 원하는 Part로 진입합니다.
차례
- Part I. PostgreSQL 아키텍처 — 클러스터·프로세스·메모리·디스크·TOAST
- Part II. 설치와 초기 설정 — 패키지·소스·컨테이너·initdb·클라이언트
- Part III. 트랜잭션과 동시성 — MVCC·격리 수준·락·어드바이저리 락
- Part IV. 스토리지와 I/O — 버퍼·WAL·체크포인트·HOT·tablespace
- Part V. 쿼리 처리 — 옵티마이저·통계·EXPLAIN·조인·힌트
- Part VI. 인덱스 — B-tree·Hash·GiST·GIN·BRIN·partial·BLOAT
- Part VII. 파티셔닝 — range/list/hash·pruning·pg_partman
- Part VIII. 유지보수 — VACUUM·ANALYZE·REINDEX·정기 점검
- Part IX. 인증·보안·권한 — 역할·pg_hba·RLS·SSL·pgaudit·외부 인증
- Part X. 설정과 운영 — postgresql.conf·로깅·통계 뷰·모니터링
- Part XI. 백업과 복구 — pg_dump·basebackup·PITR·pgBackRest·Barman
- Part XII. 복제와 고가용성 — streaming·logical·Patroni·failover
- Part XIII. 성능과 튜닝 — 워크플로우·인덱스·파티션·풀링·OS·메모리
- Part XIV. 안티패턴과 자주 하는 실수 — 스키마·쿼리·인덱스·트랜잭션·운영
- Part XV. 트러블슈팅 — 에러 패턴·슬로우 쿼리·락·자원·복제·corruption
- Part XVI. 확장과 응용 — 확장 시스템·자주 쓰는 확장·FDW·PL 언어
- Part XVII. 클라우드 PostgreSQL — RDS·Aurora·Azure Flexible·Cloud SQL·AlloyDB
- Part XVIII. 마이그레이션과 업그레이드 — Oracle/MySQL → PG·pg_upgrade·무중단
표기 규약
- 본문 산문은 PostgreSQL 풀네임.
pg_*식별자는 그대로 - 별도 명시 없으면 PostgreSQL 17 LTS 기준
- 영문 PG 용어(WAL, vacuum, checkpoint, replication, slot, BLOAT 등)는 번역하지 않는다
- 모든 도식은 Mermaid, 운영 SQL은 그대로 복사·실행 가능한 형태로
관련 사이트
- 메인 블로그: dbalog.dev
- 잡담 블로그: dbalog.dev/journal