PostgreSQL 설치.

pgsql-logo

PostgreSQL 은 인기있는 오픈소스 데이터베이스 시스템 입니다. PostgreSQL 9.0 으로 넘어오면서 ‘Hot Stand by Replication’ 기능을 제공하게 되는등 많은 변화가 있었습니다.

이 문서는 CentOS 7 배포판에서 PostgreSQL 설치에 대한 것입니다.

 

1. 준비

다음의 패키지가 설치되어 있어야 합니다.

2. Download and Unpack

3. Configure and Compile and Install

필요한 기능이 무엇인지를 고민해 봅시다. 많은 기능들을 제공하지만 대략적으로 다음과 같은 기능을 제공하는 것이 좋습니다.

  • plpython => python-devel.x86_64
  • pltcl => tcl-devel.x86_64
  • plperf => perl-devel.x86_64
  • ssl => openssl-devel.x86_64
  • pam => pam-devel.x86_64
  • kerberos => krb5-devel.x86_64 e2fsprogs-devel.x86_64
  • nls => gettext-devel.x86_64
  • xml => libxml2-devel.x86_64 libxslt-devel.x86_64
  • ldap => openldap-devel.x86_64

PostgreSQL 9.x 를 설치하는데 있어서 필요한 기능이 무엇인지를 먼저 생각해야 합니다. 각 기능에 대한 것은 각각 홈페이지를 참고하세요.

필요한 패키지를 설치 합니다.

그리고 기능을 위한 패키지를 설치 합니다.

Compile option 을 다음과 같이 지정합니다.

mtune 을 자신의 CPU 에 맞게끔 수정해야 합니다. 자세한 사항은 여기(GCC Optimization)를 참고 하세요.

Configure를 다음과 같이 실행하고 컴파일을 합니다.

4. 후속작업

PostgreSQL 9.x 를 시스템에 이식시키기 위해서 다음과 같은 과정을 진행해 줍니다.

PostgreSQL 시스템 계정 추가

initdb 실행

Pam 설정

ldconfig 라이브러리 추가

lib64 심볼릭 링크

php와 같은 프로그램들은 설치시에 ‘/usr/lib64’ 와 같은 라이브러리 디렉토리를 검색합니다. 따라서 pgsql9.4의 lib 디렉토리를 lib64 심볼릭 링크를 만들어 줍니다.

Systemd 설정

CentOS 7 부터는 initscript 가 아닌 systemd 를 이용해 데몬 서비스들을 관리 합니다. 먼저 systemd 에 등록을 위한 파일을 다음과 같이 작성 합니다.

postgresql.service 파일

systemd 에 등록할 파일을 위와같이 작성합니다. 작성한 후에 /usr/lib/systemd/system 디렉토리에 복사주고 활성화 해줍니다.

그리고 파일 내용에 postgresql-check-db-dir 파일을 호출하는데 이는 다음과 같습니다.

postgresql-check-db-dir 파일.

 

Creative Commons License
PostgreSQL 설치. by Voyager of Linux is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

2 comments

  1. help lose weight

    I absolutely love your website.. Pleasant colors & theme.

    Did you develop this website yourself? Please reply back as I’m attempting to create
    my own blog and would like to find out where you
    got this from or what the theme is called. Cheers!

Post a comment

You may use the following HTML:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">