본문 바로가기

dev/리눅스

PostgreSQL 설치

CentOS에 PostgreSQL 설치하는 법 포스팅하겠습니다.

 

루트 계정으로 설치 진행하겠습니다.

 

처음부터 루트 계정으로 설치하는 경우는 거의 없는데 편의를 위해 이렇게 진행하겠습니다.

 

postgresql 설치

 

yum 패키지를 통해 PostgreSQL를 설치합니다.

 

중간에 예/아니오 물어보는 문구가 몇 번 나오는데 예(y) 입력해주시면 됩니다.

 

postgresql 설치

 

마찬가지로 예 입력합니다.

 

postgresql 설치

 

설치가 제대로 되면 "Complete!"라는 메시지가 확인됩니다.

 

postgresql 초기화

 

설치가 된 PostgreSQL 초기화 진행합니다.

 

postgresql 실행

 

PostgreSQL을 실행합니다.

 

제대로 실행됐는지 확인하기 위해 ps 명령어 사용합니다.

 

postgis 설치

 

PostgreSQL 설치가 끝났으면 postgis 설치 시작합니다.

 

postgis 설치 에러 화면

 

혹시 중간에 위와 같은 에러 화면이 뜨는 경우가 종종 있습니다.

 

에러가 발생하는 원인으로 패키지 저장소가 업데이트가 안 되었기 때문에 이런 에러가 발생합니다.

 

epel-release 설치

 

epel-release 패키지를 설치합니다.

 

postgis 설치

 

다시 postgis 설치합니다.

 

postgis 설치 화면

 

postgis 설치 화면

 

설치 과정 중간에 PostgreSQL과 마찬가지로 예/아니오 물어보는 문구가 나오는데

 

예(y) 입력하시면 됩니다.

 

postgis 설치 완료 화면

 

postgis가 정상적으로 설치되면 위와 같이 "Complete!"라는 메시지가 확인됩니다.

 

postgresql 중지

 

PostgreSQL의 접속 정보 및 postgres 계정 비밀번호를 수정하기 위해 잠시 PostgreSQL을 중지시킵니다.

 

접속 정보를 수정하려면 postgresql.conf 파일과 pg_hba.conf 파일 2개를 수정해야 합니다.

 

postgresql 접속 정보 수정

 

먼저 postgersql.conf 파일 수정하기 위해 /var/lib/pgsql/9.5/data 디렉터리로 이동하여

 

postgersql.conf 파일을 엽니다.

 

postgersql.conf 파일 수정

 

파일을 열게 되면 #listen_addresses = "localhost"   # what 블라블라!@#$%^

 

이런 식으로 되어있는데 주석(#)을 지우고, listen_addresses = "*"로 수정합니다.

 

이렇게 바꾸는 것은 어디에서든 PostgreSQL에 접속할 수 있게 해 주기 위함입니다.

 

특정 ip만 접속하게 해 주려면 * 대신에 특정 ip 주소 입력해주시면 됩니다.

 

postgresql 접속 정보 수정

 

다음으로 같은 디렉터리에 있는 pg_hba.conf 파일을 엽니다.

 

pg_hba.conf 파일 수정 

 

파일을 열게 되면 80 라인의 method 부분을 trust로 수정합니다.

(비밀번호 입력 없이 로그인하기 위해)

 

postgresql 실행

 

PostgreSQL을 다시 실행시킵니다.

 

psql 실행

 

postgres 계정의 비밀번호를 수정하기 위해

 

/usr/pgsql-9.5/bin 디렉터리로 이동하여 psql을 실행시킵니다.

 

그리고 postgres 계정의 비밀번호를 위의 화면과 같이 수정합니다.

 

psql 종료시키려면 \q 입력하면 됩니다.

 

postgresql 종료

 

현재 PostgreSQL의 접속 방식이 trust, 즉 비밀번호 입력 없이 접속할 수 있기 때문에

 

PostgreSQL을 접속방식을 변경하기 위해 중지시킵니다.

 

pg_hba.conf 파일 수정

 

pg_hba.conf 파일을 열어 접속 방식을 수정합니다.

 

pg_hba.conf 파일 수정

 

80라인의 method를 md5로 변경하고

 

파일 하단에 "host all all 0.0.0.0 md5"을 추가합니다.

 

추가한 내용은 어디에서든 md5 방식으로 PostgreSQL에 접속할 수 있다는 뜻입니다.

 

postgresql 실행

 

접속 정보 수정이 끝났으면 다시 PostgreSQL을 실행합니다.

 

지금까지 ps 명령어로 PostgreSQL 실행 여부를 확인했는데

 

위의 화면처럼 "service postgersql-9.5 status" 명령어를 통해 PostgreSQL 실행 여부를 확인할 수 있습니다.

 

postgresql 방화벽 개방

 

외부에서 PostgreSQL 접속할 수 있기 위해 방화벽을 개방합니다.

 

postgresql 접속

 

PostgreSQL 접속이 잘 되는지 확인하기 위해 테스트해봅니다.

 

접속 정보를 입력하고 위의 화면처럼 Sucess 화면이 뜨면 성공한 것입니다.

 

지금까지 CentOS에 PostgreSQL 설치하는 방법을 포스팅했는데

 

다음에 root 계정이 아닌 일반 계정으로 설치하는 방법을 포스팅하겠습니다.

'dev > 리눅스' 카테고리의 다른 글

swap 파일 삭제  (0) 2020.01.19
PostgreSQL 일반 계정 설치  (0) 2019.12.23
GeoServer 설치  (0) 2019.08.31
centos7 jdk 설치  (0) 2019.07.31
scp 명령어 사용버  (0) 2019.06.27