postgres:install


※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

トップページ > postgres > インストール

postgresのインストール

debian系の場合

■準備  必要なものを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の方でポリシーを指定しておきます。