개요
회사의 특정 서버에 postgresql을 설치할 일이 생겼다. Oracle Linux 6.7을 사용하고 인터넷망 사용이 불가능한 조건이다.
따라서 방법을 찾아보다 직접 소스를 빌드하여 postgresql을 설치하기로 했다. 이 방법을 정리해둔다.
postgres 직접 빌드하기
Redhat EPEL 사용이 여의치 않아 소스를 직접 다운받아 빌드하기로 한다.
소스 받기
https://www.postgresql.org/ftp/source/에서 원하는 버전의 소스를 받는다. 필자는 Centos 6용 9.5.6 버전을 받았다.
빌드
소스를 다운로드 받아 압축을 푼 뒤 디렉토리에서 아래의 명령어들을 실행한다.
그러면 /usr/local/pgsql/ 위치에 바이너리가 설치된다.
Postgres 구동하기
필자 회사에서는 /pghome으로 디스크가 마운트가 새로 되어 이 디렉토리를 데이터 저장용도로 쓰기로 하였다.
이를 염두해 두고 postgres 구동을 준비하고 실행하는 것을 진행해보자.
데이터 초기화
아래 명시한 환경변수를 읽어 postgres가 /pghome/data 위치에 기본 환경설정 파일을 포함하여 Init을 수행한다.
데이터베이스 생성
아래와 같이 데이터베이스를 생성한다.
Remote 접속을 위한 환경설정
설정파일 변경
다른 원격 장비에서도 DB에 접근하기 위해 아래의 환경설정을 진행한다.
/pghome/data/postgresql.conf
아래 내용을 추가한다.
/pghome/data/pg_hba.conf
아래 내용 추가한다.
데몬 구동
postgres는 root계정으로 실행을 할 수 없다. 따라서 postgres라는 계정을 만들어서 이를 통해 실행하자.
반대로 데몬 종료는 아래와 같이 가능하다.
검증하기
아래 명령을 통해 postgres가 정상 실행됨을 확인 할 수 있다.
원격으로는 postgresql://ID:PW@IP/postgres 규격으로 접속할 수 있다.