Mac, HomebrewでPL/Pythonを利用する

Mac OS 10 Yosemite + HomebrewでPostgreSQLを利用する。

Pythonは、python3をhomebrewでインストール済みとする。

1. PostgreSQLのインストール

$ brew install --with-python postgres

postgresでPL/Pythonを利用するために–with-pythonオプションを付加する。

以前の設定が残っている場合削除する。

$ rm -rf /usr/local/var/postgres

データベースの初期化。

-Uオプションでしていしたユーザ名がスーパーユーザとして追加される。

指定しない場合、ログインユーザ名が使われる。

$ initdb -U postgres /usr/local/var/postgres

起動。

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

psqlできることの確認とユーザが作られていることの確認。

$ psql -U postgres
postgres=# \du

以下のエラーがでてpsqlできない場合は、古いpostgresプロセスが生きている可能性があるのでkillしてから再トライ。

psql: FATAL:  could not open relation mapping file "global/pg_filenode.map": No such file or directory

データベースの作成。

$ createdb -U postgres -E utf-8 hoge_db

終了。

$ pg_ctl stop

 

2. PL/Pythonの設定

現在使えるPL一覧を確認。通常PL/PgSQLのみ。

$ createlang -U postgres --list hoge_db
 Name | Trusted?
 ---------+----------
 plpgsql | yes

PL/Pythonを追加する。

$ createlang -U postgres plpython2u hoge_db

あとは言語としてpythonが使える。

 

参考