오퍼링 > 소프트웨어 테크놀로지 서비스 > 오픈소스 SW > DBMS > 자료실

오픈소스 SW 자료실 - DBMS

오픈소스 DBMS 관련 기술서비스 정보 및 자료를 제공합니다.

[FAQ/PostgreSQL] PostgreSQL 환경 변수는 어떤 것들이 있나요?

2021.02.22

Question


PostgreSQL에서 사용하는 환경 변수에는 어떤 것들이 있나요?

 




Answer


PostgreSQL에서는 사용자의 편의를 위해 다양한 환경 변수를 제공합니다.
여기에서는 그 중 가장 많이 사용되는 PGDATA와 PGDATABASE에 대하여 다루겠습니다.

 

PGDATA


PostgreSQL을 컨트롤 할 때, 매번 입력해야 하는 매개 변수가 있습니다. 그것은 바로 데이터 디렉토리 경로입니다.
initdb를 사용하여 PostgreSQL을 처음 초기화 할 때나, pg_ctl start를 사용하여 PostgreSQL을 실행해야 할 때, 아래와 같이 명령어 뒤에 매개 변수로 데이터 디렉토리를 계속 입력해 주어야 합니다.

명령어 뒤에 매개 변수로 데이터 디렉토리를 계속 입력

환경 변수(Environment Variables)를 설정

다행히 PostgreSQL에는 이런 번거로움을 해결할 수 있는 방법이 있습니다. 바로 환경 변수(Environment Variables)를 설정하면 됩니다.

PGDATA 환경 변수를 설정

위와 같이 PGDATA 환경 변수를 설정해 놓으면 -D 옵션을 주지 않아도 됩니다.

PGDATA의 값으로 반드시 절대경로 입력

PGDATA의 값으로 반드시 절대경로 입력

주의할 점은 PGDATA의 값으로 반드시 절대경로를 넣어줘야 합니다. 상대경로를 넣어주면 당연히 명령을 실행하는 위치마다 대상 디렉토리가 변경이 되어 정상적으로 동작되지 않는 경우가 발생하게 됩니다.

 

PGDATABASE


또한 PostgreSQL에 접속할 때, 매번 접근하고자 하는 데이터베이스명을 입력해 줘야 합니다.

접근하고자 하는 데이터베이스명을 입력

기본적으로 하나의 데이터베이스를 사용할 예정이라면, 이것도 환경 변수에 넣어주면 매번 입력하지 않아도 됩니다.

기본적으로 하나의 데이터베이스를 사용할 예정이라면, 이것도 환경 변수에 넣어주면 매번 입력하지 않아도 됩니다.

위의 설정 이후 아래와 같이 -d 옵션 없이 사용 가능합니다.

-d 옵션 없이 사용 가능

리눅스에서 bash shell을 사용한다면, .bashrc 에 PGDATA, PGDATABASE 를 넣어두면 편리합니다.
위와 같이 하면 다음에 로그인 할 때 신경쓰지 않고 사용할 수 있습니다.

 

그 밖의 환경 변수들


아래 표는 가장 기본적으로 주로 사용하는 환경 변수 입니다.

기본적으로 주로 사용하는 환경 변수

PostgreSQL 메뉴얼을 살펴보면, 그 외에도 많은 환경 변수들이 존재합니다.
적절히 사용하면 큰 도움이 됩니다.
https://www.postgresql.org/docs/current/libpq-envars.html