CSVで出力
psqlで、カラムをカンマ区切りで出力。
\pset format unaligned \pset fieldsep ',' \o member.csv
ロール(ユーザー)
http://www.postgresql.jp/document/8.3/html/database-roles.html
psql コマンドでロール一覧を表示
\du
SQLで
SELECT rolname FROM pg_roles;
ロールを作る
sudo su postgres createuser foo
psql でパスワードを設定する
\password (自分のパスワードを設定する場合) \password foo (fooのパスワードを設定する場合)
認証方法の設定
http://www.postgresql.jp/document/8.3/html/auth-pg-hba-conf.html
- デフォルトはident (ロール名がUnixのアカウントと一致するものとして、Unixのアカウントの認証を利用して認証)
- PostgreSQLに登録したパスワードで認証するには、方式として md5 や password を選択。passwordは認証時に平文でパスワードが流れる。md5 を使うべき。
pg_hba.confに認証方法を記述する。
どのホストからのアクセスであっても、ロールpgsqlについては、md5方式で認証する。
host all pgsql 0.0.0.0/0 md5
なお、外部からの接続を受け付けるには、postgresql.confを編集して
listen_addresses = '*'
psqlコマンド
パスワードを聞かれないようにする
http://www.postgresql.jp/document/8.3/html/libpq-pgpass.html
ページャー
\pset pager off
ページャーを無効にする
SQL
文字列の検索
http://www.postgresql.jp/document/8.3/html/functions-matching.html
foo LIKE '%ABC%'
%は0文字以上、 _ は1文字にマッチ
foo ~ '^(B|C)'
正規表現
foo ~* '^(B|C)'
正規表現、大文字小文字区別せず