한양과학기술고등학교

에듀테크 프로젝트 대시보드

Ubuntu 설치

apt systemd cluster PGDG data directory

Ubuntu 는 기본 저장소에 PostgreSQL 이 들어 있습니다. 최신 메이저가 필요하면 공식 PGDG 저장소를 씁니다.

1. 설치

# 배포판 기본 버전
sudo apt update
sudo apt install -y postgresql postgresql-contrib

# 또는 최신 메이저 (PGDG 저장소)
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
wget -qO- https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo tee /etc/apt/trusted.gpg.d/pgdg.asc
sudo apt update && sudo apt install -y postgresql-16

postgresql-contrib 는 pg_stat_statements, pg_trgm, uuid-ossp 같은 표준 확장 모음입니다.

2. 서비스와 클러스터

sudo systemctl status postgresql        # 래퍼 서비스
sudo systemctl status postgresql@16-main  # 실제 인스턴스

pg_lsclusters                          # 버전/포트/상태/경로 한눈에
sudo systemctl restart postgresql@16-main
pg_lsclusters
Ver Cluster Port Status Owner    Data directory              Log file
16  main    5432 online postgres /var/lib/postgresql/16/main  /var/log/postgresql/postgresql-16-main.log

3. 주요 경로

항목경로 (버전 16 기준)
데이터 디렉터리/var/lib/postgresql/16/main
설정 파일/etc/postgresql/16/main/postgresql.conf
접속 인증/etc/postgresql/16/main/pg_hba.conf
로그/var/log/postgresql/
소켓/var/run/postgresql/.s.PGSQL.5432

4. 첫 접속

sudo -u postgres psql        # OS 계정 postgres 로 슈퍼유저 접속 (peer 인증)

postgres=# \conninfo
postgres=# \q
보안 기본값
  • 설치 직후 postgres 슈퍼유저는 비밀번호가 없고 peer(로컬 OS 계정) 인증만 허용
  • 외부 접속은 기본 차단 — listen_addresses 와 pg_hba.conf 둘 다 열어야 함 (연결)
"EXPLAIN ANALYZE 없이 성능을 논하지 마라"