postgresqlのコマンド

2018.10.26 (金)

バージョン確認

$ psql —version
(ログインしてから、"# select version();")

ログイン

$ su - postgres
$ psql (または psql -d postgres / psql -U postgres)
postgres=#

ログアウト

postgres-# \q

データベースに入る

postgres-# psql DATABASE_NAME

ユーザーを指定してデータベースに入る

postgres-# psql -U USER_NAME DATABASE_NAME

データベースの一覧

postgres-# \l (または $ psql -l)

データベース切り替え(というか接続)

postgres-# \c DATABASE_NAME
(postgres-# \connect DATABASE_NAME)

データベースの作成

create database DATABASE_NAME;

データベースの削除

# drop database DATABASE_NAME;

データベースのオーナーの指定

# create database DATABASE_NAME owner USER_NAME;

オーナーを変更する場合

alter database DATABASE_NAME owner to USER_NAME

ユーザーの作成

いろんなコマンドがありすぎて正直気持ちが悪いポスグレですが、OSのpostgresユーザーにて以下のコマンドをたたくのが一番楽そうです。ユーザーとパスワードを同時に作成します。2回パスワード聞かれます。

createuser -P USER_NAME

ロールを指定してユーザーを追加する

# create role USER_NAME with login password 'PASSWORD';

ユーザー一覧表示

# \du (または select rolname from pg_roles; )

ユーザーの削除

# dropuser ユーザ名

データベースのエンコーディングを指定する

create database DATABASE_NAME encoding UTF8;

データベースアクセスの権限を設定

権限は、SELECT, INSERT, UPDATE, DELETE, REFERENCES, TRIGGERになります。すべての権限を与える場合はALLを指定します。

grant ALL, ... on database DATABASE_NAME to USER_NAME;
grant ALL, ... on TABLE_NAME to USER_NAME;

PostgreSQLの基本的なコマンド
PostgreSQLのユーザ管理