📘 PostgreSQL 설치 및 기본 설정
🧾 1. PostgreSQL 소개
PostgreSQL은 오픈소스 관계형 데이터베이스 시스템(RDBMS)으로, 안정성, 확장성, SQL 표준 준수에서 매우 강력한 성능을 보여주는 DB입니다. 최근에는 JSON, GIS, 파티셔닝 등 다양한 기능 덕분에 많은 웹 서비스와 분석 시스템에서 널리 사용되고 있습니다.
🏗️ 1. TarzanDB란?
TarzanDB는 PostgreSQL을 기반으로 엔텔스에서 개발한 고성능 DBMS입니다.
💡 TarzanDB는 PostgreSQL을 기반으로 하므로, 기존 PostgreSQL 사용자도 손쉽게 도입할 수 있으며, 기존 SQL 문법과 도구를 그대로 사용할 수 있습니다.
💿 2. PostgreSQL 설치
운영체제에 따라 설치 방법이 다르지만, 여기서는 CentOS/Ubuntu에서의 기본 설치 방법을 설명합니다.
✅ CentOS (RHEL 계열)
#저장소 추가
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-9-x86_64/pgdg-redhat-repo-latest.noarch.rpm
#PostgreSQL 15 설치
sudo dnf install -y postgresql15-server postgresql15
#데이터 디렉터리 초기화
sudo /usr/pgsql-15/bin/postgresql-15-setup initdb
#서비스 시작 및 자동 실행 설정
sudo systemctl enable --now postgresql-15
✅ Ubuntu / Debian 계열
#저장소 및 키 등록
sudo apt update
sudo apt install -y wget gnupg
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list
#설치
sudo apt update
sudo apt install -y postgresql-15
⚙️ 3. PostgreSQL 기본 설정
설치 후에는 몇 가지 설정을 조정해줘야 외부에서도 접속할 수 있습니다.
🔧 postgresql.conf 수정
#보통 위치는 /var/lib/pgsql/15/data/postgresql.conf 또는 /etc/postgresql/15/main/postgresql.conf 에 위치한다.
listen_addresses = '*'
port = 5432
🔐 pg_hba.conf 수정
#모든 IP에서 md5로 인증 허용 (보안 고려 필요)
host all all 0.0.0.0/0 md5
#위의 과정을 모두 마친 후 postgres 재시작.
sudo systemctl restart postgresql-15
👤 4. 사용자 및 데이터베이스 생성
postgres는 설치 후 기본적으로 postgres라는 슈퍼유저 계정이 생성됩니다.
#postgres 계정으로 로그인
sudo -u postgres psql
#비밀번호 설정
\password postgres
#새 사용자 및 DB 생성
CREATE USER myuser WITH PASSWORD 'mypass';
CREATE DATABASE mydb OWNER myuser;
🧪 5. 접속 테스트
▶️ 로컬 접속 : psql -U postgres -d postgres
▶️ 외부에서 접속 (예: DBeaver, pgAdmin, CLI 등) : psql -h <서버IP> -U postgres -d postgres
📦 6. 유용한 초기 설정 팁
로그 저장 설정 : postgresql.conf 파일에서 설정을 변경한다.
logdirectory = 'pg_log'
log_filename = 'postgresql-%Y-%m-%d%H%M%S.log'
logging_collector = on
성능 관련 튜닝 (RAM 환경에 따라 조정)
shared_buffers = 1GB
work_mem = 64MB
effective_cache_size = 3GB
이렇게 postgres 기본 설치와 설정이 완료되었습니다.
궁금하시거나 안되는 부분은 댓글을 남겨주세요!