ロゴ Mac OS X:PostgreSQL
 MacOS XでPostgreSQLを利用する方法。
 Macでも本格的なSQLデータベースが使えます。

Mac OS X
PostgreSQL


関連ページ
‐PostgreSQL
 ・JDBCドライバ
 ・Antインストール
 ・libphp4.so

 

iMacでMacOS X
に戻る


トップページに戻る
● MacOS X で PostgreSQLを使用する方法

2002.5.2現在の利用環境
 ・PostgreSQL 7.1.2
 ・Ant 1.4.1
 ・Mac OS X 10.1.4 (Build 5Q125)
  ‐Apache 1.3.23 (Darwin)
  ‐PHP Version 4.1.2
  ‐Java2 JDK 1.3.1


・PostgreSQLのインストールと設定

 1.準備「postgres」アカウントの作成
 2.インストール
  a.パッケージ(バイナリ)をインストール
  b.ソースをビルドしてインストール
 3.環境設定
 4.データベースの初期化


1.準備:「postgres」アカウントの作成

※:以下の作業は、Mac OS Xの管理者権限の有るユーザで行って下さい。

a.アップルメニューから「システム環境設定...」を選択し、「システム環境設定:ユーザ」をクリックします

b.「新規ユーザ」ボタンをクリック
 ロックされているときはカギアイコンをクリックして、管理者パスワードを入力して解除します。

c.新規ユーザウィンドウ:「固有名」タブ
  名前:「postgres」(tabキーを押すと名前欄の文字がユーザ名欄にも入力されます。)
ユーザ名:「postgres」(これがアカウント名になります)
ログインピクチャ:(適当に選んで下さい)

d.新規ユーザウィンドウ:「パスワード」タブをクリック
パスワード:「(自由に設定出来ます)」
   確認:「(もう一度パスワードを入力)」
パスワードのヒント:「(パスワードを思い出せるような文章を入力)」
□ユーザがこのコンピュータを…:チェックボックス□にチェックvを付けて、ユーザ(postgres)を管理者として設定します。

e.「OK」ボタンをクリックし、新規ユーザ(postgres)の作成をします。


2.インストール

2a.パッケージ(バイナリ)をインストール

※:Mac OS X用のPostgreSQLのパッケージ(PostgreSQL….pkg)ファイルは既に入手出来ているものとします。
#:PostgreSQLオフィシャルマニュアル(ISBN4-8843-1589-7)付録CDに収録のパッケージ(PostgreSQL-7.1.3_10.1.pkg)はMac OS X 10.1.4にインストールし、使用出来ました。

a.ユーザ「postgres」でログインする
 現在「postgres」以外のユーザでログインしている場合は、アップルメニューのログアウト(shift-command-Q)を選び、ログアウト後、ログインパネルで「postgres」を選んでログインします。

b.インストール先フォルダの準備
 Terminalを起動し、「/usr/local」フォルダに「pgsql」フォルダを作成し、そのオーナーを「postgres」に設定します。

[localhost:~/] postgres%  sudo mkdir /usr/local/pgsql
Password:postgresのパスワード
[localhost:~/] postgres% sudo chown postgres /usr/local/pgsql
c.プログラムパッケージをインストールする
 Finderで、パッケージファイル「PostgrSQL….pkg」アイコンをダブルクリックします。
 「インストーラ」が起動するので、「カギ」アイコンをクリックして、「postgresのパスワード」を入力して解除し、「インストール」ボタンをクリックします。
 インストールするドライブを選択して、インストールを続けます。複数のドライブ(パーティション)がある場合は「/usr/local/pgsql」にインストールするので、Mac OS Xの起動ドライブを選択します。
#:インストール前に、パッケージ「PostgrSQL….pkg」ファイルが、何処に何をインストールするかを見ることが出来ます。
Terminalを起動し、「lsbom ~/Desktop/PostgreSQL….pkg/Contents/Resources/PostgreSQL….bom | less」と「lsbom」コマンドを使います。

d.Terminalを起動し、「/usr/local/pgsql」フォルダ内の全てのオーナーを「postgres」に変更する

[localhost:~/] postgres%  sudo chown -R postgres /user/local/pgsql
Password:postgresのパスワード
以上でパッケージからのインストール作業は終了です。

2b.ソースをビルドしてインストール

※:ソースファイル(postgresql….tar.gz)は既に入手出来ているものとします。
#:私は、PostgreSQLのページからリンクを辿りPostgreSQL7.1.2のソースファイル[8.8MB]をダウンロードして、ビルド/インストールしました。

a.ユーザ「postgres」でログインする
 現在「postgres」以外のユーザでログインしている場合は、アップルメニューのログアウト(shift-command-Q)を選び、ログアウト後、ログインパネルで「postgres」を選んでログインします。

b.ソースファイルの展開先フォルダと、インストール先フォルダの準備
 Terminalを起動し、「/usr/local」フォルダに「src」と「pgsql」フォルダを作成し、そのオーナーを「postgres」に設定します。

[localhost:~/] postgres%  sudo mkdir /usr/local/src
Password:postgresのパスワード
[localhost:~/] postgres%  sudo mkdir /usr/local/pgsql
[localhost:~/] postgres% sudo chown postgres /usr/local/src
[localhost:~/] postgres% sudo chown postgres /usr/local/pgsql
c.ソースファイルを展開する(~/Desktopにpostgresql-7.x.x.tar.gzが有ると仮定しています)
[localhost:~/] postgres%  cd /usr/local/src
[localhost:/usr/local/src] postgres%  tar xfz ~/Desktop/postgresql-7.x.x.tar.gz
d.configureの実行(Makefileの作成)
 展開して出来た「postgresql-7.x.x」フォルダに移動し、インストールに必要な設定をします。
[localhost:/usr/local/src] postgres%  cd postgresql-7.x.x
[localhost:src/postgresql-7.x.x] postgres%  ./configure [--オプション]
※:configureのオプションについては、PostgreSQLのドキュメントや関連書籍を参考にして下さい。
#:私は、「./configure --enable-multibyte=EUC_JP --with-java --enable-syslog」としました。 但し、--with-javaとJDBCドライバの構築を指定した場合、Antが必要となります。 Mac OS XにAntをインストールする方法はこちらにあります。

e.コンパイル(make)を行う

[localhost:/usr/local/src] postgres%  make
 makeを実行するとTerminal画面にコンパイルの状況が次々に表示されますので、しばらく(G3/450MHzで10〜15分程)待ちます。

f.リグレッションテストを行う(省略可です)
 makeで作成されたアプリケーションのリグレッション(退行)テストが出来ます。

[localhost:/usr/local/src] postgres%  make check
Terminalにテストの状況が表示されます。(Mac OS X 10.1.4でPostgreSQL7.2.1をテストした所、問題有り有りませんでした。)

g.PostgreSQLを「/usr/local/pgsql」フォルダにインストールする
 makeが完了したら、インストールを実行します。

[localhost:/usr/local/src] postgres%  sudo make install
Password:postgresのパスワード
makeでコンパイルされたファイルを「/usr/local/pgsql」フォルダにコピーするだけなのですぐに終わります。

h.「/usr/local/pgsql」フォルダ内のオーナーを全て「postgres」に変更する

[localhost:/usr/local/src] postgres%  sudo chmod -R postgres /usr/local/pgsql
Password:postgresのパスワード
以上でソースファイルからのインストール作業は終了です。
※:configureに--with-javaオプションを付けてインストールした場合、JDBCドライバは「/usr/local/pgsql/share/java」フォルダ内に「postgresql.jar」として作成されます。 通常、UNIX系OSの場合は、CLASSPATHと言う環境変数にJDBCのパスを追加するのですが、Mac OS XではJDBCドライバは「/Library/Java/Extensions」フォルダに入れなければなりません。
[localhost:/usr/local/src] postgres%  sudo cp /usr/local/pgsql/share/java/postgresql.jar 
/Library/Java/Extensions
Password:postgresのパスワード
これでJDBCドライバがMac OS XのJavaで使える様になります。


3.環境設定

 設定ファイル「~/Library/init/tcsh/login.main」(または、「~/.tcshrc」)に下記の設定を追加します。
setenv PATH "${PATH}:/usr/local/pgsql/bin"
setenv POSTGRES_HOME /usr/local/pgsql
setenv MANPATH "${MANPATH}:$POSTGRES_HOME/man"
setenv PGDATA $POSTGRES_HOME/data
setenv PGLIB $POSTGRES_HOME/lib
setenv LD_LIBRARY_PATH $PGLIB
設定ファイルを編集・保存したら、Terminalの「シェル:新規 [command-N]」で新規Terminalウィンドウを開いて、エラーになっていないか、また「env」コマンドを実行して環境変数の設定が正しく行われているかを確認します。
[localhost:~/] postgres%  env
…略…
PATH=~/bin…略…:/usr/local/pgsql/bin
…略…
MANPATH=/Users…略…:/usr/local/pgsql/man
POSTGRES_HOME=/usr/local/pgsql
PGLIB=/usr/local/pgsql/lib
PGDATA=/usr/local/pgsql/data
LD_LIBRARY_PATH=/usr/local/pgsql/lib


4.データベースの初期化

※:データベースの全ての機能を管理するのは「root」では無く「postgres」です。

a.データベース初期化コマンド(initdb)を実行する

[localhost:~/] postgres%  initdb
「initdb」コマンドは(環境変数PATHで追加した)「/usr/local/pgsql/bin」に有り、このコマンドを実行することでPostgreSQLのインストール時には存在しなかったデータベースクラスタ(格納領域)が(環境変数PG_DATAで設定した)「data」と言うフォルダ名で「/usr/local/pgsql」フォルダ内に作られ、「data」フォルダ内にはデータベースを利用する為ののファイルやフォルダが作成されます。

b.データベースサーバー(postmaster)の起動

[localhost:~/] postgres%  postmaster -S
これで、Terminalからデータベースを利用することが可能になります。
JDBCを利用する場合や、他のマシンからTCP/IP経由でデータベースに接続する必要が有る場合は、下記の様に、
[localhost:~/] postgres%  postmaster -S -i
「-i」オプションを追加します。

c.データベースサーバー(postmaster)の停止

[localhost:~/] postgres%  pg_ctl stop
以上でPostgreSQLが利用出来るようになりました。

※:データベースを利用するユーザの作成や、データベースの作成、テーブルの作成とデータの入力等は、PostgreSQLのドキュメントやマニュアル、関連書籍を参照して下さい。

E-mail:ei3k-iwt@asahi-net.or.jp