これまで何度かLinux上にインストールしたPostgreSQLの初期設定を行ってきたが、毎回ユーザーの追加やデータベースの作成のやり方を忘れてしまうので、備忘録としてまとめておく。

環境

OSCentOS 7
DBPostgreSQL 9.6

PostgreSQLはyumでインストールし、サービスは既に起動しているという前提で話を進めていく。

postgresユーザーへ切替

Linuxユーザーから、postgresユーザーへ切り替える。

su - postgres

パスワードを設定

次にpsqlコマンドでPostgreSQLのシェルにログインし、postgresユーザーのパスワードを設定する。

# シェルにログイン
psql

# パスワード設定
alter role postgres password 'password';

ユーザーを追加

新規ユーザーを追加する場合は一度シェルからログアウトし、ユーザー追加コマンドを実行する。

# ログアウト
\q

# ユーザー追加
createuser -P newuser

以下のコマンドを実行して正しく追加されているか確認しよう。

psql -c 'select usename from pg_user;'

   usename    
--------------
 postgres
 newuser
(2 rows)

リストに表示されればOK。

追加したユーザー用のデータベースを作成する

次は新規追加したユーザー(newuser)専用のデータベースを作成してみる。

シェルにログインし、以下のコマンドを実行する。

# ログイン
psql

# データベース作成
create database new_db owner newuser;

# データベース一覧確認コマンド
\l

一覧にnew_dbが表示されるはずだ。