#contents *はじめに [#z54bd772] Mac OS X 10.6にPostgreSQLをインストールする方法について、参照元URLのページを元に作成しました。 ***環境 [#f4957bf3] intel Macmini Late2009 Mac OS X 10.6&br; PostgreSQL 8.4.1&br; readline-6.0 (Postgreに必要なライブラリ) *手順 [#w11b0d40] 手順は以下のようになります。1と2の順番以外は前後してもよい。 +readlineのインストール +Postgreのインストール +postgresユーザーの生成 +スタートアップの登録 *readlineのインストール [#n073d5d5] readlineをインストールします。ソースファイルは下記URLです。&br; 特別な設定は不要なので、淡々と進めます。&br; http://ftp.yz.yamagata-u.ac.jp/pub/GNU/readline/ cd /usr/local/src curl -O http://ftp.yz.yamagata-u.ac.jp/pub/GNU/readline/readline-6.0.tar.gz tar -zvxf readline-6.0.tar.gz 次に、readlineをコンパイルし、インストールします。 cd readline-6.0 ./configure make sudo make install *Postgreのインストール [#xda97503] 下記URLより、Postgresの最新版をダウンロードします。&br; http://www.postgresql.jp/PostgreSQL/8_4/8_4_1 cd /usr/local/src curl -O http://www.ring.gr.jp/pub/misc/db/postgresql/source/v8.4.1/postgresql-8.4.1.tar.gz tar -zvxf postgresql-8.4.1.tar.gz 次に、Postgresをコンパイルし、インストールします。こちらも特に設定不要なので淡々と進めます。&br; cd postgresql-8.4.1 ./configure make sudo make install configureで64bitの設定をしていませんが、私の環境では64bitで動作しています。 *postgresユーザーの生成 [#ma98306f] ユーザーの生成方法が10.4以前から大きく変わり、dsclというコマンドを使います。&br; 作成するユーザーは名前、グループ名が共に_postgresというユーザーです。&br; (10.6以降、デーモンで動作するユーザーは一文字目がアンダースコアで始まるルールがあります。無くても大丈夫ですが)&br; まずは、利用可能なGIDとUIDを調べます。 dscl . -list /Groups PrimaryGroupID | awk '{print $2}' | sort -n dscl . -list /Users UniqueID | awk '{print $2}' | sort -n 上記コマンドで出力された数字はすでに使用されているIDです。 使用済みIDは人それぞれですが、空き番号がUID,GIDともに113だったとします。 sudo -i dscl . create /Users/_postgres UniqueID 113 dscl . create /Users/_postgres PrimaryGroupID 113 dscl . create /Users/_postgres NFSHomeDirectory /usr/local/pgsql/ dscl . create /Users/_postgres RealName "PostgreSQL Server" dscl . create /Users/_postgres Password "*" dscl . append /Users/_postgres RecordName postgres 最後のappendコマンドは、_postgresユーザーの存在を忘れないよう、postgresという別名も登録しています。&br; 続いて、_postgresグループを作ります。 dscl . create /Groups/_postgres dscl . create /Groups/_postgres PrimaryGroupID 113 dscl . append /Groups/_postgres RecordName postgres dscl . create /Groups/_postgres RealName "PostgreSQL Users" logout この時点でインストールは完成しました。ユーザーも完成しました。次に、データベースを作成する必要があります。 sudo mkdir /usr/local/pgsql/data sudo mkdir /usr/local/pgsql/log sudo chown -R postgres:postgres /usr/local/pgsql sudo chmod -R 700 /usr/local/pgsql/data postgresを起動するため、_postgresユーザーでログインします。 sudo su _postgres - データベースを初期化し、デーモンをスタートします。 /usr/local/pgsql/bin/initdb -E UTF8 -D /usr/local/pgsql/data/ /usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data/ -l /usr/local/pgsql/log/postgresql.log start 最後に、必要であれば過去のデータをインポートします。 /usr/local/pgsql/bin/createdb testdb /usr/local/pgsql/bin/psql -f /tmp/database-dump.sql testdb インポートされたか確認します。 /usr/local/pgsql/bin/psql -l *スタートアップの登録 [#t71a9ef0] 自動起動用設定ファイルpostgres.plistをこのページからダウンロードします。&br; postgres.plistを所定のフォルダに移動させます。 sudo mv ~/Desktop/postgres.plist /Library/LaunchDaemons/ sudo chmod 644 /Library/LaunchDaemons/postgres.plist sudo chown root:wheel /Library/LaunchDaemons/postgres.plist 詳細は別の記事を参照。 -[[Snow Leopard対応版postgres.plist]] *参照元URL [#l74cae12] [[Upgrading postgres on Snow Leopard (Mac OS X 10.6)>http://eric.harris-braun.com/blog/2009/11/10/id-149]]flow&br; [[Entropy.ch Discussion Forums>http://www.entropy.ch/phpbb2/viewtopic.php?t=2291]]スタートアップファイルについて