DBをGUIで更新できたりすると便利なのでPG Commanderを使ってみる。

ちなみにPG CommanderはApp Storeからでも利用することができます。無料だと5つまで接続先を作ることができる(はず)。

Heroku Postgresに接続する

まずはherokuのDBと接続してみる。以下のコマンドでDBの情報が取得できる。

heroku config:get DATABASE_URL

ランダムな文字列が返ってくるけど、postgres://ユーザ名:パスワード@サーバ名:ポート/データベースのように情報が羅列されているだけ。

PG CommanderでHostと書かれている部分にはサーバ名を入力する。以上でGUIでHeroku Postgresのデータを操作できるようになる。

Localにpostgresを立ててPG Commanderで接続する

Mac環境でHomebrewを使ってpostgresをインストール。

$ brew install postgresql

インストールできたら初期化。

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

以下のコマンドでPostgreSQLサーバを起動。

postgres -D /usr/local/var/postgres

起動できたら以下のコマンドでデータベースの確認ができる。

$ psql -l

次はローカルとherokuで同じように接続できるように環境変数の設定を行います。herokuでは環境変数DATABASE_URLが設定していました。

アプリケーション側でDATABASE_URLを使ってDBに接続を行っているので、ローカルでも同じ環境変数を設定します。

~/.bash_profileに環境変数設定。

export DATABASE_URL=/usr/local/var/postgres

sourceで反映&確認。

$ source ~/.bash_profile
$ echo $DATABASE_URL

ここまでやったんだけど、アプリケーションからDBに接続する際に色々とエラーが出てローカル環境から接続することはできず…。

また次の機会にでも。