Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
398
Help us understand the problem. What is going on with this article?
@tstomoki

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

More than 3 years have passed since last update.

※こちら内容がかなり古くなっていたので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

398
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
398
Help us understand the problem. What is going on with this article?