Emotion Wave Tech Blog

福岡にあるエモーションウェーブ株式会社のエンジニアが書いています。

PostgreSQLのインストール

最近さわったPostgreSQLの覚え書きを。

■環境 CentOS6.5 PostgreSQL9.3

パッケージではなく、ソースコードコードからインストールしました。

  1. インストール前の準備(PostgreSQL用ユーザー、インストール先ディレクトリの作成)
  2. [root@vagrant-ce65 ~]# useradd postgres
    [root@vagrant-ce65 ~]# cd /usr/local/src/
    [root@vagrant-ce65 src]# mkdir /usr/local/src/postgresql-9.3.4
    [root@vagrant-ce65 src]# chown postgres:postgres /usr/local/src/postgresql-9.3.4
    [root@vagrant-ce65 src]# mkdir /usr/local/pgsql
    [root@vagrant-ce65 src]# chown postgres:postgres /usr/local/pgsql/

  3. ソースのダウンロード、展開
  4. [root@vagrant-ce65 src]# su - postgres
    [postgres@vagrant-centos65 ~]$ wget http://ftp.postgresql.org/pub/source/v9.3.4/postgresql-9.3.4.tar.gz
    [postgres@vagrant-centos65 ~]$ tar zxvf postgresql-9.3.4.tar.gz -C /usr/local/src/
    wgetが入ってなかったらyum install wget、ソースアーカイブの展開先指定(tar -Cオプション)

  5. インストール
  6. ※事前にreadline,zlibのインストールが必要
    [root@vagrant-ce65 src]# yum install readline readline-devel
    [root@vagrant-ce65 src]# wget http://www.zlib.net/zlib-1.2.8.tar.gz
    [root@vagrant-ce65 src]# tar zxvf zlib-1.2.8.tar.gz
    [root@vagrant-ce65 src]# cd zlib-1.2.8
    [root@vagrant-ce65 zlib-1.2.8]# ./configure
    [root@vagrant-ce65 zlib-1.2.8]# make
    [root@vagrant-ce65 zlib-1.2.8]# make install
    [root@vagrant-ce65 zlib-1.2.8]# su - postgres
    [postgres@vagrant-centos65 ~]$ cd /usr/local/src/postgresql-9.3.4/
    [postgres@vagrant-centos65 postgresql-9.3.4]$ ./configure
    [postgres@vagrant-centos65 postgresql-9.3.4]$ make
    [postgres@vagrant-centos65 postgresql-9.3.4]$ make install

  7. 環境変数の設定
  8. ※.bashrcに以下を追加,反映
    [postgres@vagrant-centos65 ~]$ vi .bashrc
      export PATH=$PATH:/usr/local/pgsql/bin
      export MANPATH=$MANPATH:/usr/local/pgsql/man
      export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/pgsql/lib
      export PGDATA=/usr/local/pgsql/data
      ・
      ・
    [postgres@vagrant-centos65 ~]$ source .bashrc

  9. データベースの初期化
  10. PostgreSQLを使用可能な状態にする
    [postgres@vagrant-centos65 ~]$ initdb --encoding=UTF8 --no-locale

  11. 起動と停止
  12. [postgres@vagrant-centos65 ~]$ pg_ctl -w start
    [postgres@vagrant-centos65 ~]$ pg_ctl stop
    ※DB接続中のユーザーがいる場合は-mオプションを付けて停止する。 $ pg_ctl -m 停止方法 [s(mart)|f(ast)|i(mmediate)] stop

  13. PostgreSQL接続用一般ユーザーの作成とDB接続
  14. [postgres@vagrant-centos65 data]$ createuser kuma
    [postgres@vagrant-centos65 data]$ psql postgres kuma
    psql (9.3.4)
    Type <help> for help.

    postgres=&gt;; \q


    http://www.postgresql.jp/document/9.3/html/index.html