【インストール】
■インストールディレクトリ作成
mkdir /usr/local/pgsql
■ユーザー作成しておく
useradd postgres
passwd postgres
以降、su postgresで作業
■postgresqlをダウンロード
ftp://ftp.ring.gr.jp/pub/misc/db/postgresql より postgresql-8.1.1.tar.gz を /usr/local/src/ にダウンロード。
■展開
tar zxvf postgresql-8.1.1.tar.gz
■configure
cd postgresql-8.1.1
./configure
configure: error: readline library not found
If you have readline already installed, see config.log for details on the
failure. It is possible the compiler isn’t looking in the proper directory.
Use –without-readline to disable readline support.
readline library がないとのこと
–without-readline するか
readline?をインストール
■readline ?をインストール
ftp://ftp.gnu.org/gnu/ よりダウンロード
tar zxvf readline-5.1.tar.gz
cd readline-5.1
./configure
make
make install
■再度 configure
configure: error: zlib library not found
If you have zlib already installed, see config.log for details on the
failure. It is possible the compiler isn’t looking in the proper directory.
Use –without-zlib to disable zlib support.
zlib がない。
–without-zlib するか
前段同様zlibをインストール
zlibは
http://www.zlib.net/
■再度 configure
./configure
configure: error:
*** Could not execute a simple test program. This may be a problem
*** related to locating shared libraries. Check the file ‘config.log’
*** for the exact reason.
※またエラー
config.logをconftestで検索すると
./conftest: error while loading shared libraries: libreadline.so.5: cannot open shared object file: No such file or directory
といったエラーが2ヶ所。
ぐぐると、/usr/local/lib/ を LD_LIBRARY_PATH(ライブラリを検索するときの環境変数)に追加するといいかも?といった記事発見。
export LD_LIBRARY_PATH=”$LD_LIBRARY_PATH”:/usr/local/lib
———————————————————
追記
後で知ったが、
/usr/local以下のライブラリを認識してないのだから、
/etc/ld.so.conf に /usr/local/lib を追記して
ldconfig実行
するでもいいかも
———————————————————
■再度 configure
./configure
※今度は通った様子
■コンパイル&インストール
make
make install
以上でインストール終了。
【設定】
■環境変数追加
/home/postgres/.bashrcに追記
PATH=”$PATH”:/usr/local/pgsql/bin
export POSTGRES_HOME=/usr/local/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”:/usr/local/lib
export PATH=”$PATH”:/usr/local/pgsql/bin
■DB初期化
※ユーザー postgresで実行
/usr/local/pgsql/bin/initdb –no-locale –encoding=EUC_JP
※ロケールデータベースはバグがある?との記事があり、利用しないオプション
※文字コードはEUCを指定
■設定ファイル
vi /usr/local/pgsql/data/postgresql.conf
silent_mode = on
※デーモンとして動かすオプション
■起動
※ユーザー postgresで実行
pg_ctl -w start
※停止は
pg_ctl -w stop
■稼動チェック
※regression testというツールが付属してる
cd /usr/local/src/postgresql-8.1.1/
make check
※しばらく時間がかかる・・
最終的に下記のような表示がでればOK
======================
All 93 tests passed.
======================
■自動起動
rootで実行
cp /usr/local/src/postgresql-8.1.1/contrib/start-scripts/linux /etc/rc.d/init.d/postgresql
chmod 755 /etc/rc.d/init.d/postgresql
chkconfig –add postgresql
以上で設定完了。
あとはユーザーとDB作成して利用する。