Install PostgreSQL 8.3.7 on CentOS 5.3


ソースはこちらから => http://www.postgresql.org/
・インストール前にチェックするパッケージ
# rpm -q bison が存在しない場合 # yum -y install bison
# rpm -q flex が存在しない場合 # yum -y install flex
# rpm -q readline-devel が存在しない場合 # yum -y install readline-devel
# rpm -q zlib-devel が存在しない場合 # yum -y install zlib-devel
# rpm -q openssl-devel が存在しない場合 # yum -y install openssl-devel
openldapとkb5については好みで・・・

・ユーザーとグループの追加
/etc/group に postgres を追加
ユーザ postgres を追加
~postgres/.bash_profile に以下を追加
export POSTGRES_HOME=/usr/local/pgsql
export PGLIB=$POSTGRES_HOME/lib
export PGDATA=/path/to/data
export MANPATH="$MANPATH":$POSTGRES_HOME/man
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH":"$PGLIB"
export PATH=$PATH:${POSTGRES_HOME}/bin

・インストール
# tar xvfz postgresql-8.3.7.tar.gz
# chown -R postgres:postgres postgresql-8.3.7
# cd postgresql-8.3.7
# ./configure
CC='gcc -m64' \ x_64 の場合追加
--enable-thread-safety \
--with-libxml \
--with-libxslt \
--with-openssl \
--with-pam
# --with-gssapi \
# --with-ldap \
# --with-krb5
# make
# make install
/usr/local/pgsql 以下にインストールされます。
# su - postgres
$ initdb --no-locale --encoding=EUC_JP

/path/to/data/pg_hba.conf を必要に応じて設定(192.168.5.0は自宅の環境)
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all trust
# IPv4 local connections:
host all all 127.0.0.1/32 trust
host all all 192.168.5.0/24 md5
METHOD に password を指定した場合は以下が必要
$ usercreate hoge
$ alter user hoge with password 'hogehoge';

/path/to/data/postgresql.conf を必要に応じて設定
listen_addresses = '192.168.XXX.0'
以下は好み?
syslog_facility = 'LOCAL0'
syslog_ident = 'postgres'
client_encoding = UTF-8

# su -
# cp /path/to/postgresql-8.3.7/contrib/start-scripts/linux /etc/rc.d/init.d/pgsql
/etc/rc.d/init.d/pgsql は環境に合わせて修正
# Data directory
PGDATA="/path/to/data"

# chmod 0755 /etc/rc.d/init.d/pgsql
# chkconfig --add pgsql
# service pgsql start