[Mac OS X] PostgreSQL をインストールした手順メモ

●fink を使って PostgresSQL 8.0.3 をインストールする(root権限)
$ sudo su -
# /sw/bin/fink install postgresql80 postgresql80-dev postgresql80-shlibs


●Perl の DBI・DBD::Pg モジュールをインストールする(root権限)
# perl -MCPAN -e shell
cpan> install DBI
cpan> install DBD::Pg
Path to pg_config? /sw/bin/pg_config


●postgres 権限の初期設定を行う(root権限)
# nidump passwd . | grep postgres
postgres:********:252:252::0:0:PostgreSQL Database Server:/dev/null:/dev/null
  ⇒現在のpostgresユーザの状況を確認する

# mkdir /var/postgres
# chown postgres:postgres /var/postgres
  ⇒ホームディレクトリを作成する

# echo "postgres::252:252::0:0:PostgreSQL Database Server:/var/postgres:/bin/bash" | niload passwd .
  ⇒ホームディレクトリをシェルを変更する

# passwd postgres
  ⇒パスワードを設定する

# nidump passwd . | grep postgres
postgres:********:252:252::0:0:PostgreSQL Database Server:/var/postgres:/bin/bash
  ⇒変更後のpostgresユーザの状況を確認する
finkでインストールした時点で、postgresユーザは作成されているが、
ログインできないなどの問題もあるので、設定を変更する。

●PostgreSQL 向けの共有メモリ設定を行う(root権限)
# sysctl -a | grep kern.sysv.shm
kern.sysv.shmmax: 4194304
kern.sysv.shmmin: 1
kern.sysv.shmmni: 32
kern.sysv.shmseg: 8
kern.sysv.shmall: 1024
  ⇒現在の共有メモリの設定を確認する

# vi /etc/rc
sysctl -w kern.sysv.shmmax=4194304 kern.sysv.shmmin=1 kern.sysv.shmmni=32 kern.sysv.shmseg=8 kern.sysv.shmall=1024

sysctl -w kern.sysv.shmmax=10240000 kern.sysv.shmmin=1 kern.sysv.shmmni=32 kern.sysv.shmseg=8 kern.sysv.shmall=20480
  ⇒/etc/rc の設定を変更する(10MB確保する…少な目です)

# reboot
  ⇒OS を再起動しないと反映されない


●PostgreSQL の初期設定を行う(postgres権限)
$ sudo su - postgres
$ mkdir /var/postgres/pg_data
$ /sw/bin/initdb --no-locale -U postgres -W -E UTF-8 -D /var/postgres/pg_data
  ⇒データ領域を初期化する

$ vi /var/postgres/pg_data/postgresql.conf
listen_addresses = '*'
port = 5432
shared_buffers = 1024
  ⇒TCP/IP経由の接続を許可する。共有メモリは8MB利用(少な目です)

$ vi /var/postgres/pg_data/pg_hba.conf
local all all trust
host all all 127.0.0.1/32 trust

local all all md5
host all all 127.0.0.1/32 md5
  ⇒接続時にはパスワード認証を必須にする

$ mkdir /var/postgres/pg_log
$ /sw/bin/pg_ctl -D /var/postgres/pg_data -l /var/postgres/pg_log/postgres.log start
$ tail /var/postgres/pg_log/postgres.log
$ exit
  ⇒PostgreSQL を起動する


●PostgreSQL 内ユーザとデータベースを作成する(普段のユーザ権限でOK)

$ /sw/bin/createuser -P -E -U postgres maiblo
Enter password for new user: ******** ←maiblo権限のパスワード
Enter it again: ******** ←もう一度maiblo権限のパスワード
Shall the new user be allowed to create databases? (y/n) y
Shall the new user be allowed to create more new users? (y/n) n
Password: ******** ←postgres権限のパスワード
CREATE USER
  ⇒PostgreSQL内ユーザが作成できた

$ /sw/bin/createdb -W -U maiblo maiblo_db
Password: ******** ←maiblo権限のパスワード
  ⇒データベースが作成できた

$ /sw/bin/psql -U maiblo maiblo_db
Password: ******** ←maiblo権限のパスワード
maiblo_db=> select version();
  ⇒データベースに接続できた


ブログ気持玉

クリックして気持ちを伝えよう!

ログインしてクリックすれば、自分のブログへのリンクが付きます。

→ログインへ

なるほど(納得、参考になった、ヘー)
驚いた
面白い
ナイス
ガッツ(がんばれ!)
かわいい

気持玉数 : 0

この記事へのコメント

この記事へのトラックバック