:PostgreSQL

PostgreSQLのインストール

ダウンロード

http://www.sra.co.jp/people/t-ishii/PostgreSQL/より、最新版をダウンロードします。
今回は、postgresql-7.3.2.tar.gzをダウンロードしました。

準備

ダウンロードしている間に、以下のことをすませてしまいます。

グループ・ユーザの追加

専用のグループ・ユーザを用意します。

# /usr/sbin/groupadd postgres
# /usr/sbin/useradd -g postgres postgres

インストール先の準備

postgresユーザでインストールしますので、インストール先の準備をします。インストールディレクトリを作成し、権限を与えます。

# mkdir /usr/local/pgsql
# chown postgres:postgres /usr/local/pgsql
# ls -l /usr/local
drwxr-xr-x    2 postgres postgres     4096  5月 13 13:50 pgsql

これで、準備は完了です。

展開

postgresユーザでインストールするため、通常のソースインストールとは異なり、postgresユーザで、すべてを行います。

# su - postgres
$ tar zxf postgresql-7.3.2.tar.gz

いつも通りです。vオプションをつけないと、展開の様子が画面に出ませんのですっきりします。

configure

$ cd postgresql-7.3.2
$ ./configure

7.2までは、色々とオプションをつけてましたが、必要ありません。
--enable-multibyteで指定していたものは、initdb時に指定します。
--enable-localeは標準装備になりましたので、日本語に不具合などあるため、initdb時に--no-localeを指定します。
--enable-syslogは、標準装備になりました。

make

$ make all
$ make check

ここまでやり、最後に、

======================
 All 89 tests passed. 
======================

と表示されれば問題ないので、インストールします。

インストール

$ make install

初期設定

PosgreSQLを使用するために、設定を行います。

環境変数

postgresユーザの.bashrcに以下の内容を追加します。

PG=/usr/local/pgsql
export PATH="$PATH":$PG/bin
export MANPATH="$MANPATH":$PG/man
export PGLIB=$PG/lib
export PGDATA=$PG/data 

PGDATAに関しては、データファイルの保存位置になりますので、適時修正してもよいかと思います。
設定は、次回ログイン時から読み込まれますので、今回は、以下のコマンドで読み込ませます。

$ source .bashrc

データベースクラスタの作成

PostgreSQL ではデータベースクラスタといわれるディレクトリ以下にデー タベースのすべての情報を格納します。プログラムインストール終了の段階で はこれは作成されておらず initdb というコマンドの実行によって作成されま す。データベースクラスタとして作成されるディレクトリは環境変数の設定で $PGDATA に指定したディレクトリです。 initdb は次のように実行します。

$ initdb --encoding=EUC-JP --no-locale

--encoding=EUC_JPデータベースのデフォルトの文字エンコーディングを EUC_JP にします。
--no-localeロケールを利用しません。

起動

PostgreSQLのデーモンであるpostmasterを以下のように起動します。

$ pg_ctl -w start

postmasterが起動されたらデータベースへ接続できるかを以下のように確認できれば終了です。

$ psql -l
        List of databases
   Name    |  Owner   | Encoding
-----------+----------+----------
 template0 | postgres | EUC_JP
 template1 | postgres | EUC_JP
(2 rows)

自動起動

ソースを展開したディレクトリ以下の、/contrib/start-scriptsに起動用のスクリプトがあります。これを/etc/rc.d/init.d/以下にコピーします。

# cd (ソース展開ディレクトリ)/contrib/start-scripts
# cp linux /etc/rc.d/init.d/postgres

コピー先へ移動し、スクリプトを登録します。

# cd /etc/rc.d/init.d/
# chmod 755 postgres
# /sbin/chkconfig --add postgres

以下のように確認ができれば、完了です。

# /sbin/chkconfig --list | grep postgres
postgres        0:オフ  1:オフ  2:オン  3:オン  4:オン  5:オン  6:オフ

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2011-01-28 (金) 21:32:53 (2757d)