-
PostgreSQL 설정 | Ubuntu 서버 세팅, 이 순서대로 하면 끝 (10)Dev 2025. 4. 9. 08:00반응형
PostgreSQL – 데이터는 안전하고 빠르게
Python 프로젝트에서 Django를 사용한다면, 데이터베이스로 PostgreSQL을 선택하는 경우가 많다.
빠른 성능과 안정성은 물론, 다양한 확장 기능을 지원하는 PostgreSQL은 꽤 든든한 백엔드 파트너다.이번 글에서는 PostgreSQL을 설치하고, 기본적인 유저 및 데이터베이스 설정을 마무리하는 방법을 정리한다.
이 순서대로 따라 하면 바로 실전에 투입할 수 있는 DB 환경이 완성된다.
1. PostgreSQL 설치
가장 먼저 PostgreSQL 패키지를 설치하자:
sudo apt install -y postgresql
설치가 완료되면 PostgreSQL 서버는 자동으로 실행된다.
2. 서비스 상태 확인
정상적으로 실행 중인지 확인해보자:
sudo systemctl status postgresql
“active (running)” 상태라면 OK.
3. PostgreSQL 셸 진입
PostgreSQL은 설치 직후부터 postgres라는 관리자 계정을 제공한다.
이 계정으로 진입해 유저와 데이터베이스를 만들어보자.sudo -i -u postgres psql
프롬프트가 postgres=#로 바뀌면 셸에 잘 진입한 것이다.
4. 사용자 계정 생성
아래 명령어에서 [유저이름]과 [패스워드]를 원하는 값으로 바꿔 입력하자:
CREATE USER [유저이름] WITH PASSWORD '[패스워드]';
예: CREATE USER django_user WITH PASSWORD 'mysecret';
5. 데이터베이스 생성
UTF-8이 아닌 ASCII 기반 정렬이 필요한 경우 LC_COLLATE 'C' 옵션을 추가할 수 있다:
CREATE DATABASE [DB이름] TEMPLATE template0 LC_COLLATE 'C';
예: CREATE DATABASE myapp_db TEMPLATE template0 LC_COLLATE 'C';
6. 권한 부여
해당 유저에게 데이터베이스 권한을 부여하자:
GRANT ALL PRIVILEGES ON DATABASE [DB이름] TO [유저이름];
7. 인바운드(외부 접속) 허용하기
Django 서버가 DB 서버와 분리되어 있거나, 외부 접속을 허용해야 한다면 ph_hba.conf 파일 수정이 필요하다.
sudo vi /etc/postgresql/14/main/pg_hba.conf
IPv4 local connections: 아래쪽에 다음과 같은 라인을 추가한다:
host all all [허용할_IP]/32 md5
예: host all all 111.222.333.444/32 md5
이 설정을 통해 특정 IP에서만 PostgreSQL에 접속할 수 있게 제한할 수 있다.
8. 방화벽에서 5432 포트 개방
PostgreSQL의 기본 포트는 5432이다. UFW를 사용 중이라면 다음 명령어로 포트를 열어주자:
sudo ufw allow 5432/tcp
이미 방화벽 설정을 다룬 이전 글을 따라왔다면, 이 포트도 함께 허용해두었을 가능성이 있다.
🔗 방화벽 설정 (UFW) | Ubuntu 서버 세팅, 이 순서대로 하면 끝 (3)
마무리
여기까지 마쳤다면, 로컬 혹은 외부에서 PostgreSQL에 안전하게 접속할 수 있는 환경이 갖춰진 것이다.
이제 Django 프로젝트의 settings.py에서 DB 설정을 연결하고, migrate를 실행하면 된다.다음 글에서는 Nginx와 uWSGI를 설치하고, Django 앱을 외부에 배포하는 준비를 해보자.
이제 여러분의 Ubuntu 서버는 Python과 PostgreSQL을 품은 든든한 백엔드 베이스캠프가 되어가고 있다.
반응형'Dev' 카테고리의 다른 글
uWSGI 설치 & Emperor 설정 | Ubuntu 서버 세팅, 이 순서대로 하면 끝 (12) (0) 2025.04.11 Nginx 설치 (uWSGI 설정 후 연동 필요) | Ubuntu 서버 세팅, 이 순서대로 하면 끝 (11) (0) 2025.04.10 Git & GitHub 설정 | Ubuntu 서버 세팅, 이 순서대로 하면 끝 (9) (0) 2025.04.08 Poetry 설치 | Ubuntu 서버 세팅, 이 순서대로 하면 끝 (8) (0) 2025.04.07 autoenv 설치 | Ubuntu 서버 세팅, 이 순서대로 하면 끝 (7) (0) 2025.04.06