■準備 必要なものをaptで入れておきます
# apt-get install libreadline5-dev # apt-get install zlib1g-dev
■ソースの取得とmake ここでは、8.2.6の場合。また、ソースの取得先は適切なミラーサイトを選ぶこと。
# cd /usr/local/src # wget ftp://ftp.sra.co.jp/pub/cmd/postgres/8.2.6/postgresql-8.2.6.tar.gz # tar xvzf postgres-8.2.6 # ./configure --prefix=/var/lib/pgsql # make all
■ユーザーの作成とディレクトリの準備 ここでは、/var/lib/pgsqlをpostgresのディレクトリする場合を書きます。 (標準では、/usr/local/pgsqlです)
# adduser --home /var/lib/pgsql postgres
(パスワードは、適当に作り、次で削除する)
# passwd -d postgres # su - postgres $ mkdir data $ exit
■インストール
# cd /usr/local/src/postgres-8.2.6 # make install
■postgresユーザーの設定
# su - postgres $ emacs .bash_profile
以下のような内容を記載します。
export PATH=$PATH:/var/lib/pgsql/bin export POSTGRES_HOME=/var/lib/pgsql export PGLIB=$POSTGRES_HOME/lib export PGDATA=$POSTGRES_HOME/data export MANPATH="$MANPATH":$POSTGRES_HOME/man export LD_LIBRARY_PATH="$LD_LIBRARY_PATH":"$PGLIB"
設定の反映は、$./source ~/.bash_profile
■DBの作成
$ initdb -E UNICODE --no-locale -D /var/lib/pgsql/data
■起動ファイルの作成
# cp /usr/local/src/postgresql-8.2.6/contrib/start-scripts/linux /etc/init.d/postgres # chmod a+x /etc/init.d/postgres
ここでは、/var/lib/pgsqlいインストールしているので、少しファイルの中身を編集します。具体的にはpostgresファイルのprefixとData directoryを修正
prefix=/var/lib/pgsql PGDATA="/var/lib/pgsql/data"
■自動起動の設定
# update-rc.d postgres defaults 05 95
デフォルトでは、もっと遅く起動させて、早く終了させていますが、ここでは、早く起動、遅く終了にしています。
■DBの起動
# /etc/init.d/postgres start■確認 postgresユーザーになって
$ psql -l
で表示されればOK
■設定
/var/lib/pgsql/data/postgresql.confの修正
たとえば、他のマシンからもアクセス出来て、ログに1秒以上かかるクエリーを表示し、また、オートバキュームを有効にする場合は、以下のようにします。
listen_addresses = '*' redirect_stderr = on log_min_duration_statement = 1000 autovacuum = on stats_row_level = on
設定変更したら、再起動すること
# /etc/init.d/postgres restart
また、外部からアクセスする場合は、pg_hba.confの方でポリシーを指定しておきます。