PostgreSQLのインストール

(2007.10.23) ページを分割。

PostgreSQLのインストールについて。

ソフトウェア開発でのデータベースの利用は、基礎から学ぶデータベースプログラミング を参照してください。

# Linuxでバイナリパッケージを使う

Fedora Core 6では、2007年2月現在、PostgreSQL 8.1.8のパッケージが用意されている。パッケージ名は次のとおり。

postgresql-python-8.1.8-1.fc6
postgresql-libs-8.1.8-1.fc6
postgresql-docs-8.1.8-1.fc6
postgresql-8.1.8-1.fc6
postgresql-server-8.1.8-1.fc6
postgresql-devel-8.1.8-1.fc6

このほか、rhdb-utilsパッケージで、pg_filedumpコマンドが提供される。

これらを、yumコマンド、pirut などでインストールすればいい。

# Windows版のバイナリ

(2005.8.28 この節追加。)

Windowsでは、PostgreSQLはバイナリパッケージでインストールするのが簡単。このパッケージにはpgAdmin IIIが含まれる。また、別のサーバにPostgreSQLをインストールする場合でも、pgAdmin IIIだけのパッケージがあるので、これをインストールしておくと何かと便利。

Windows用のPostgreSQL 8.0バイナリ版のインストーラを使ってみた。インストールするときにエンコーディングを「UNICODE (UTF-8)」にすると、どうもinitdbでエラーになるみたい。EUC-JPにする。

Note.

※最近のバージョンでは、問題なくUNICODEにできる。

PostgreSQLに接続するデータベースユーザ名を決定し、それにふさわしいようにPostgreSQL認証ファイル pg_hba.conf を編集する。(後述)

# ソースからコンパイルする

Linuxディストリビューションが用意しているPostgreSQLのバージョンが古い場合、自分でソースからコンパイルしてもいい。2007年2月現在、バージョン8.2.3が最新。

Note.

以下の記述はバージョン7.3のころのもので、若干古い。しかし、手順に変わりはないはず。

PostgreSQLパッケージがインストールされている場合には、あらかじめアンインストールしておく。(rpmコマンドの-eオプション。)

# rpm -qa | grep -i postgres
postgresql-libs-7.1.3-2
postgresql-server-7.1.3-2
postgresql-devel-7.1.3-2
postgresql-7.1.3-2
# rpm -e postgresql-libs postgresql-server postgresql-devel postgresql \
         perl-DBD-Pg php-pgsql

PostgreSQLのWebサイトから、アーカイブファイルをダウンロードする。

入手したアーカイブファイルを展開する。

$ tar xzvf postgresql-7.3.tar.gz
$ cd postgresql-7.3

コンパイル前の設定をおこなう。インストール先を指定しなければ、/usr/local/pgsqlディレクトリ以下にインストールされる。

$ ./configure --with-tcl

コンパイル。

$ make

念のため、インストールする前に、make checkと打って正常に動作するかテストする。

$ make check

テストに合格すれば、次のように表示される。(PostgreSQLのバージョンによってテストの数は異なる。)

======================
 All 77 tests passed.
======================

もし合格しないテストがあった場合は、次の文書を確認すること。

すべてのテストに合格したら、rootになって、ファイルをインストールする。

$ su
# make install

ファイルのインストールが完了したら、他のプログラムからPostgreSQLの共有ライブラリを使えるようにする。(a) 環境変数LD_LIBRARY_PATHを設定する方法と、(b) /etc/ld.so.confファイルに共有ライブラリのあるディレクトリを追加する方法がある。ここでは、後者を採ってみる。

/etc/ld.so.confファイルを編集し、次の行を追加する。

/usr/local/pgsql/lib

/etc/ld.so.confファイルを編集したら、ldconfigコマンドを実行してシステムに反映させる。

# /sbin/ldconfig

# サイト内関連ページ