티스토리 뷰

728x90

 

이번 포스트에서는 리눅스 환경에서 PostgreSQL을 설치하고, pgvector 확장을 설정하는 과정을 다룹니다. 방화벽 설정 및 외부 접근 허용 방법도 함께 설명합니다.

 

1. 시스템 업데이트

먼저 시스템 패키지 리스트를 업데이트합니다.

sudo apt update

 

 

2. PostgreSQL 설치

PostgreSQL과 기본 확장 프로그램을 설치합니다.

sudo apt install postgresql postgresql-contrib

 

 

3. PostgreSQL 실행

PostgreSQL 서버를 시작합니다.

sudo systemctl start postgresql

 

PostgreSQL 서버 상태를 확인합니다.

sudo systemctl status postgresql

 

 

4. pgvector 확장 프로그램 설치(vector 데이터를 다루지 않을거라면 건너뛰어도 됨)

PostgreSQL 16과 pgvector 확장을 설치합니다.

sudo apt install postgresql-16-pgvector

 

 

5. PostgreSQL 접속 및 설정

PostgreSQL에 접속합니다.

sudo -i -u postgres

 

PostgreSQL 쉘을 실행합니다.

psql

 

6. root 계정 비밀번호 변경

root 계정(postgres)의 비밀번호를 변경합니다.

ALTER USER postgres PASSWORD '새로운비밀번호';

 

7. pgvector 확장 추가 (vector 데이터를 다루지 않을거라면 건너뛰어도 됨)

pgvector 확장을 추가합니다. 쉘을 실행한상태에서 명령어를 입력합니다.

CREATE EXTENSION vector;

 

8. PostgreSQL 설정

pg_hba.conf 파일을 열어 설정을 변경합니다. {버젼} 부분은 확인하여 접근해야함!

sudo nano /etc/postgresql/{버젼}/main/pg_hba.conf

 

해당 파일에 다음 내용을 추가하여 특정 IP 주소에서의 접근을 허용합니다.

# IPv4 local connections:
host    all             all             192.168.5.19/32            md5

 

postgresql.conf 파일을 열어 설정을 변경합니다. {버젼} 부분은 확인하여 접근해야함!

sudo nano /etc/postgresql/{버젼}/main/postgresql.conf

 

해당 파일에서 listen_addresses 설정을 수정하여 모든 IP 주소에서의 접근을 허용합니다.

listen_addresses = '*'

 

9. 방화벽 설정

PostgreSQL의 기본 포트인 5432번 포트를 열어줍니다.

sudo ufw allow 5432/tcp

 

방화벽을 재실행하여 설정을 적용합니다.

sudo ufw reload

 

방화벽 상태를 확인하여 포트가 열려 있는지 확인합니다.

sudo ufw status
728x90