ASH | サーバ | セキュリティ | Linux | FreeBSD | DB | Web | CGI | Perl | Java | XML | プログラム | ネットワーク | 標準 | Tips集

PostgreSQLのインストール

PostgreSQLとは

 PostgreSQLとは、SQLでアクセスが可能な、フリーのデータベースです。
 以下に、PostgreSQLのインストールと環境設定方法について説明します。

パッケージのインストール

インストール環境

機種 PC-9821/V16
OS Free BSD 4.2

パッケージの確認

 PostgreSQLのパッケージがインストールされているかどうかを確認します。 postgresql-X.X.Xがあれば、インストール作業は不要です。

unix# pkg_info
postgresql-7.0.2    A robust, next generation, object-relational DBMS

パッケージのインストール

 以下の手順でパッケージをインストールします。 サーバは、ファイアーウォール内にあるため、HTTPプロキシ経由で、インターネット上のパッケージをインストールします。
 Perlでアクセスするための、DBD、DBIモジュールもインストールします。

unix# /stand/sysinstall
「C:設定」「P:パッケージ」を選択
「4:HTTP」「日本#4」を選択し、「gw01:8080」と入力
「database」を選択
以下のパッケージを指定
・DBD-Pg-0.95
・DBI-1.14
・ja-postgresql-7.0.2.20001025
「Install」を実行

 パッケージをインストールすると、データベース管理者として、pgsqlユーザが作成されます。 この他、ツールやマニュアルもインストールされますが、パスを通す必要があります。

ソースからのインストール

 JDBCドライバや、DBD/DBIモジュールを使う場合などは、ソースからメイクします。

入手元

URL ftp://ftp.sra.co.jp/pub/
ファイル名 postgresql-7.1.2.tar.gz(約8.1MB)
postgresql-7.0.3.tar.gz(約8.1MB)
postgresql-6.5.3.tar.gz(約6.7MB)

インストール環境

機種 PC-9821/V16
OS Free BSD 4.2
メイク環境 gcc 2.95.2, gmake-3.79.1

データベース管理者(pgsql)の作成

 pgsqlというユーザを作成し、pgsqlでインストールを実行します。

unix# adduser(pgsqlユーザの作成)

インストール方法

 ソースを展開し、GNU makeを使ってメイクします。 FreeBSDのデフォルトのmakeでは、メイクできません。 FreeBSDでは、GNU makeは、gmakeというコマンドになっています。
 PostgreSQL7.1からは、--with-javaオプションで、JDBCのインストールも行われます。 この場合は、Javaのメイクツールであるantも必要となります。
 PostgreSQL7.1より前は、manコマンドなどのドキュメントは、自動的にインストールされないので、別途、インストールする必要があります。

・PostgreSQL 7.1.2の場合
unix# cd /usr/local/src
unix# gzip -cd ../pub/postgresql-7.1.2.tar.gz | tar -xvf -
unix# cd postgresql-7.1.2
unix# ./configure --with-java --with-perl --enable-multibyte=EUC_JP
unix# gmake
unix# gmake install

・PostgreSQL 7.0.3の場合
unix# cd /usr/local/src
unix# gzip -cd ../pub/postgresql-7.0.3.tar.gz | tar -xvf -
unix# cd postgresql-7.0.3
unix# cd src
unix# ./configure --with-perl --enable-multibyte=EUC_JP
unix# gmake
unix# gmake install

unix# cd ../doc
unix# gmake install

・PostgreSQL 6.5.3の場合
unix# cd /usr/local/src
unix# gzip -cd ../pub/postgresql-6.5.3.tar.gz | tar -xvf -
unix# cd postgresql-6.5.3
unix# cd src
unix# ./configure --with-mb=EUC_JP
unix# make all
unix# make install

unix# cd man
unix# setenv POSTMANDIR /usr/local/pgsql/man
unix# make install

個人環境の設定

 cshやtcshの場合は、.loginファイルに以下の定義を追加します。 すべてのユーザで共通に使う場合は、/etc/csh.loginファイルに追加します。

unix# vi .login(/etc/csh.login)

以下の行を追加

# set PostgreSQL
setenv PG_HOME "/usr/local/pgsql"
setenv PATH "${PATH}:${PG_HOME}/bin"
setenv PGLIB "${PG_HOME}/lib"
setenv PGDATA "${PG_HOME}/data"

if ($?MANPATH) then
  setenv MANPATH "${MANPATH}:${PG_HOME}/man"
else
  setenv MANPATH "/usr/man:/usr/local/man:${PG_HOME}/man"
endif

if ($?LD_LIBRARY_PATH) then
  setenv LD_LIBRARY_PATH "${LD_LIBRARY_PATH}:${PGLIB}"
else
  setenv LD_LIBRARY_PATH "${PGLIB}"
endif

データベースの初期化

 データベースを初期化し、リスナー(postmaster)を起動します。

unix# initdb
unix# postmaster -S -i
unix# vi /usr/local/pgsql/data/pg_hba.conf
host         all         10.0.1.1   255.255.255.0     trust

データベースの作成

 データベースを作成します。 データベースを作成する場合は、データベース内の文字コードを指定できます。 文字コードの種類によっては、無駄なコード変換が発生し、データベースの性能も大きく変わりますので、使用するプログラム環境に合わせて指定しましょう。 一般的には、UNIXで、Perlスクリプトを使う場合は、EUC_JPを指定し、Javaを使う場合は、UNICODEを指定しています。

・EUC_JPの場合(Perlスクリプトを使う場合)
unix# createdb testdb -E EUC_JP

・UNICODEの場合(Javaを使う場合)
unix# createdb testdb -E UNICODE


Copyright (C)1995-2002 ASH multimedia lab.
mail : info@ash.jp