brewでインストールしたPostgresQLについて覚書

インストール

yossan$ brew install postgres

インストール時の状態

データベース名 postgres
アカウント インストール時のPCユーザ名
パスワード なし
データディレクト /usr/local/var/postgres/

初期環境を調べる

起動

yossan$ brew services start postgres

NOTE:

  • brew services start での起動は、使用するデータディレクトリを省略できる

ログイン

yossan$ psql -d postgres

NOTE:

  • -d データベース名
  • -U ログインアカウント 省略するとカレントのPCログイン名でログインされる
  • パスワードは設定されていない

アカウントの確認

postgres=# \du
                                   List of roles
 Role name |                         Attributes                         | Member of 
-----------+------------------------------------------------------------+-----------
 yossan    | Superuser, Create role, Create DB, Replication, Bypass RLS | {}

NOTE:

  • yossan brewでインストールした際のログインアカウント

データディレクト

postgres=# SHOW data_directory;
     data_directory      
-------------------------
 /usr/local/var/postgres
(1 row)

NOTE:

  • brew services start postgres で使用されているデータディレクト

停止

yossan$ brew services stop postgresql

NOTE:

  • brewで起動した場合、 pg_ctl コマンド では停止に失敗する

pg_ctl コマンドを使っての起動・停止

上記で確認したデータディレクトリを指定する

起動

yossan$ pg_ctl start -D /usr/local/var/postgres

NOTE:

  • -D データディレクトリ
  • l ログファイル ログの出力先を指定

停止

yossan$ pg_ctl stop -D /usr/local/var/postgres

NOTE:

  • -D データディレクトリ 起動に使用したデータディレクトリを指定

initdb コマンドを使ってデータディレクトリの作成

$ initdb -D mydb

NOTE:

  • -D データディレクトリ名
  • 初期状態はbrewでインストールしたものと同一

起動

$ pg_ctl -D mydb start

ログイン

$ psql -d database
  • -d 使用するデータベースを指定する (postgres)

停止

$ pg_ctl -D mydb stop

参照

https://www.postgresql.org/docs/9.1/app-initdb.html