Homebrewを使ったPostgreSQLのインストール(Mac OS Lion)

  • 401
    いいね
  • 3
    コメント

※こちら内容がかなり古くなっていたのでMac OS El CapitanでPostgreSQLをインストールした記事を書きました。
Homebrewを使ったPostgreSQLのインストール(Mac OS El Capitan)

heroku用にPostgreSQLを使ったアプリを作りたかったので確認用にPostgreSQLをインストールします。

HomebrewでPostgreSQLのインストール

brew install postgresql

データベースの初期化 (文字コードはUTF-8)

initdb /usr/local/var/postgres -E utf8

PostgreSQLサーバの起動

postgres -D /usr/local/var/postgres

データベース一覧が取得出来ればインストール成功

psql -l

Mac OS Lion だとこんなエラーが出ますが、LionにはデフォルトでPostgreSQLが既にバンドルインストールされてるらしいですね。

psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/pgsql_socket/.s.PGSQL.5432"?

修正用バッチをファイルをcurlでインストールし適用。

curl -o fixBrewLionPostgresql.sh http://nextmarvel.net/blog/downloads/fixBrewLionPostgres.sh

ファイル権限の変更

chmod 777 fixBrewLionPostgresql.sh

バッチシェルの実行

./fixBrewLionPostgresql.sh

これでもう一度

psql -l

をすればデータベース一覧が取得できるはずです。

環境変数の設定

環境変数PGDATAの設定。bashなら~/.bashrc、今回は~/.zshrcに以下を記述

~/.zshrc
export PGDATA=/usr/local/var/postgres

変更を反映 (Terminalソフトの再起動でも可)

source ~/.zshrc

PostgreSQLサーバの起動

pg_ctl -l /usr/local/var/postgres/server.log start

PostgreSQLサーバの終了

pg_ctl -D /usr/local/var/postgres stop -s -m fast

PostgreSQLの自動起動設定

自動起動リストにPostgreSQLの追加

cp /usr/local/Cellar/postgresql/9.3.2/homebrew.mxcl.postgresql.plist ~/Library/LaunchAgents/

自動起動リストの設定ファイルの読み込み

launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist

コマンドライン上でのPostgreSQLの起動とコマンド

起動

psql 'database名'

終了(プロンプト上)

\q

データベース作成

createdb 'database名'

データベース一覧表示

psql -l