[home][install]

PostgeSQL6.5.3

postgres ユーザの作成

groupadd -g 201 postgres
useradd -u 201 -g postgres postgres

インストール先ディレクトリの作成

mkdir /usr/local/pgsql
chown postgres:postgres /usr/local/pgsql/

展開

su - postgres
tar xvzf postgresql-6.5.3.tar.gz
cd postgresql-6.5.3/src

コンパイル準備

./configure --with-perl --with-odbc

ドキュメントのインストール

cd ../doc
gmake install

コンパイル & インストール

cd ../src
gmake all
gmake install

Shared Libraryへの登録

su -
vi /etc/ld.so.conf

/usr/X11R6/lib
/usr/i486-linux-libc5/lib
/usr/local/pgsql/lib

ldconfig
exit

Perl Moduleのインストール

パミッションの関係でperl moduleがインストールされていないと思います。
su
cd interfaces/perl5
gmake install
exit

環境変数の設定

cat >> ~/.bash_profile <<EOF

PATH=$PATH:/usr/local/pgsql/bin
MANPATH=$MANPATH:/usr/local/pgsql/man
PGLIB=/usr/local/pgsql/lib
PGDATA=/share02/data               <-- データベースの場所 
export PATH MANPATH PGLIB PGDATA
EOF

環境変数の取り込み
source ~/.bash_profile

データベースのイニシャライズ

rootユーザではなく、postgresユーザで行う
initdb

データベースのパミッションの設定

vi /share02/data/pg_hba.conf
家庭内での利用なので、特に変更せずです。

データベースの起動と簡単なテスト

cd
nohup postmaster -i > pgserver.log 2>&1 &
createdb
psql
postgres=> select datetime 'now';
?column?
----------------------------
Sat Sep 23 20:27:27 2000 JST
(1 row)
destroydb

起動時にPostgresを立ち上げるように設定

postgres.init.csh の中身はなぜか sh で、うまく動かないので、postgres.init.shを使用
cd
su
cp postgresql-6.5.3/contrib/linux/postgres.init.sh /etc/rc.d/init.d/postgres
ln -s /etc/rc.d/init.d/postgres /etc/rc.d/rc3.d/S98postgres
ln -s /etc/rc.d/init.d/postgres /etc/rc.d/rc5.d/S98postgres
exit

リグレッションテスト

cd
cd postgresql-6.5.3/src/test/regress
gmake clean
gmake all runtest
diffを取ると結構違うが、めんどくさんので気にしない。
destroydb regression
gmake clean
$Lastupdate: 2000/09/24 (Sun) 17:11:54 $

[home] [install]
ひらの yo@hirano.cc