psql使い方
PostgreSQL への接続方法
基本フォーマット
psql -h ホスト名 -p ポート番号 -U ロール名 -d データベース名
ローカルホスト上のPostgreSQLサーバに接続する場合
psql
別サーバのPostgreSQLサーバに接続する場合
psql -h ホスト名
ロール名指定
psql -U ロール名
データベース名指定
psql -d データベース名
ポート番号指定(デフォルトポート番号5432でない場合)
psql -p ポート番号
すべて指定する場合は次のようになります。
psql -h 192.168.0.1 -p 5432 -U postgres -d postgres
psql接続後のコマンド
データベース一覧の表示
サーバ上の全てのデータベースの名前、所有者、文字セット符号化方式、アクセス権限の一覧が確認できる。
# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
------------+------------+----------+------------+------------+-----------------------
postgres | postgres | UTF8 | en_US.utf8 | en_US.utf8 |
template0 | postgres | UTF8 | en_US.utf8 | en_US.utf8 | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | en_US.utf8 | en_US.utf8 | postgres=CTc/postgres+
| | | | | =c/postgres
データベースのサイズを確認する
# \l+
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges | Size | Tablespace | Description
------------+------------+----------+------------+------------+-----------------------+----------+------------+--------------------------------------------
postgres | postgres | UTF8 | en_US.utf8 | en_US.utf8 | | 7945 kB | pg_default | default administrative connection database
template0 | postgres | UTF8 | en_US.utf8 | en_US.utf8 | =c/postgres +| 7801 kB | pg_default | unmodifiable empty database
| | | | | postgres=CTc/postgres | | |
template1 | postgres | UTF8 | en_US.utf8 | en_US.utf8 | postgres=CTc/postgres+| 7801 kB | pg_default | default template for new databases
| | | | | =c/postgres | | |
データベースロールを確認(“ユーザ”と”グループ”という概念は”ロール”に統合)
# \du
List of roles
Role name | Attributes | Member of
------------+------------------------------------------------------------+-----------
epg | Superuser, Create role, Create DB | {}
postgres | Superuser, Create role, Create DB, Replication, Bypass RLS | {}
psqlで接続中スキーマの確認
# select current_schema;
current_schema
----------------
public
テーブル一覧を確認
# \d
List of relations
Schema | Name | Type | Owner
--------+------------------------+----------+-------
public | encoded | table | epg
public | encoded_id_seq | sequence | epg
public | programs | table | epg
public | recorded | table | epg
public | recorded_id_seq | sequence | epg
public | recordedhistory | table | epg
public | recordedhistory_id_seq | sequence | epg
public | rules | table | epg
public | rules_id_seq | sequence | epg
public | services | table | epg