고급 PostgreSQL 실습 랩

본 과정에서는 관계, 고급 데이터 타입, 인덱싱, 트랜잭션, 뷰, 권한, 쿼리, 트리거, 백업, 파티셔닝, 전체 텍스트 검색 등을 다루는 실습 랩을 통해 PostgreSQL 을 마스터합니다.

데이터베이스PostgreSQL

💡 이 튜토리얼은 영어로 번역되었습니다. 원본을 보려면 영어로 전환

소개

20개의 안내형 실습으로 PostgreSQL 심화 기능을 탐색합니다. 기본 표 작업을 넘어 관계 설계, 특수 데이터 타입, 쿼리 계획, 트랜잭션, 프로그래밍 가능한 로직, 관리, 확장, 연결 풀링, 복제를 SQL과 명령줄 도구로 직접 다룹니다.

각 실습은 작은 로컬 환경에서 하나의 개발 또는 운영 주제에 집중합니다. 쿼리 계획을 확인하고 PL/pgSQL 함수와 트리거를 만들며, SQL 백업을 복원하고, PostGIS를 활성화하고, PgBouncer 연결을 시험하고, 스트리밍 복제본을 구성합니다. 단계별 형식이 복잡한 기능과 운영상 한계를 함께 보여 줍니다.

학습 내용

  • 외래 키로 관계를 모델링하고 내부·외부 조인 비교하기
  • JSONB, 배열, UUID, 날짜, 시간대, CTE, 하위 쿼리, 윈도 함수 조회하기
  • 인덱스 생성, EXPLAIN, 표 파티셔닝, GIN 전문 검색 구현하기
  • 트랜잭션, 롤백, 격리 수준, 잠금, 뷰, 구체화 뷰 관리하기
  • 저장 함수, 행 트리거, 이벤트 트리거, PL/pgSQL 예외 처리 개발하기
  • 역할과 권한, 백업·복원, VACUUM, ANALYZE, 로그 검사 수행하기
  • PostGIS로 점, 거리, 버퍼, 교차 쿼리 실행하기
  • PgBouncer 풀링과 PostgreSQL 스트리밍 복제 구성 및 검증하기

추천 대상

PostgreSQL 기초를 알고 폭넓은 심화 기능을 안내에 따라 경험하려는 SQL 학습자, 애플리케이션 개발자, 데이터베이스 관리자 입문자에게 적합합니다. 실전 친숙도를 높이지만 짧은 실습이 운영 환경의 설계와 운영 경험을 대신하지는 않습니다.

선수 지식: 기본 SQL 문, 표, 키, 쿼리를 이해하고 Linux 터미널을 사용할 수 있어야 합니다. 여러 실습이 SQL과 서비스·설정 명령을 결합하므로 psql 경험을 권장합니다.

학습 환경: 각 실습은 Ubuntu 22.04 VNC 데스크톱, 로컬 PostgreSQL, 터미널, 필요할 때 PostGIS 또는 PgBouncer를 제공합니다. 관리 작업은 로컬 서비스와 sudo를 사용하며 클라우드 DB나 외부 계정은 필요하지 않습니다.

자주 묻는 질문

심화 과정이 왜 Beginner로 표시되나요?

20개 실습 모두 명확한 단계별 지침을 제공해 Beginner로 표시됩니다. 그러나 기능 범위는 심화이므로 SQL과 PostgreSQL 기초는 중요합니다. 각 영역을 소개하지만 운영 수준의 깊이를 목표로 하지는 않습니다.

복제 실습은 여러 서버나 고가용성을 제공하나요?

아니요. 같은 VM에서 5432 기본 서버와 5433 읽기 전용 스트리밍 복제본을 실행합니다. WAL, pg_basebackup, 시작, 모니터링, 데이터 전파는 연습하지만 다중 호스트, 자동 장애 조치, 재해 복구는 다루지 않습니다.

PostGIS와 PgBouncer에 외부 인프라가 필요한가요?

아니요. 둘 다 로컬에 설치합니다. 공간 쿼리는 작은 도시 표를 사용하고 PgBouncer는 localhost에서 pgbench와 관리 통계로 시험합니다.

관리 실습은 실제 운영과 얼마나 유사한가요?

작은 일회용 DB에서 일반 SQL pg_dump 백업과 수동 설정 등 명령과 개념을 보여 줍니다. 용량 계획, 보안 강화, 물리 백업, PITR, 모니터링 시스템, 운영 변경 절차는 범위 밖입니다.

강사

labby
Labby
Labby is the LabEx teacher.

추천 코스

no data