このエントリーをはてなブックマークに追加


PostgreSQLでユーザを追加(作成)する方法

PostgreSQLでユーザを作成する手順を記します。
使用したOSはCentOS6になります。
また、使用したPostgreSQLのバージョンは以下の通りです。

postgres=# select version();
                                                     version                                                      
------------------------------------------------------------------------------------------------------------------
 PostgreSQL 8.4.13 on x86_64-redhat-linux-gnu, compiled by GCC gcc (GCC) 4.4.6 20120305 (Red Hat 4.4.6-4), 64-bit
(1 行)

関連資料・関連記事

createuserコマンドでユーザを作成する

postgresユーザにsuしcreateuserコマンドでユーザを作成してみます。

postgresユーザにsuする

postgresユーザにパスワードを設定していないため、以下の操作でpostgresユーザにsuしました。

[sakura@centos6 ~]$ su -
パスワード:
[root@centos6 ~]# su - postgres
-bash-4.1$ 

createuserコマンドを使ってみる

createuserコマンドに-Pオプションを付けて実行します。

createuser -P

オプション-Pを--helpオプションで確認するとパスワードを割り当てるとなっています。

$ createuser --help
<snip>
  -P, --pwprompt            ロールにパスワードを割り当てる
<snip>

オプション-Pを付けない場合は、パスワードの設定はありません。

では、実際にcreateuserコマンドを使ってsakuraユーザを作成してみます。
postgresユーザで実行した出力結果です。

-bash-4.1$ whoami
postgres
-bash-4.1$ createuser -P
作成するロール名を入力してください: sakura
新しいロールのパスワード:
もう一度入力してください:
新しいロールをスーパーユーザとしますか?  (y/n)y
-bash-4.1$ 

psqlコマンドで接続して実際にsakuraユーザが作成されていることが確認できました。

-bash-4.1$ psql
psql (8.4.13)
"help" でヘルプを表示します.

postgres=# select usename from pg_user;
 usename  
----------
 postgres
 sakura
(2 行)

SQLでユーザ追加を行う

ユーザ追加を行うSQLは以下の構文になります。

CREATE USER ユーザ名 ;

パスワードを設定する場合は、以下の構文になります。

CREATE USER ユーザ名 WITH PASSWORD パスワード ;

実際にユーザを作成してみます。

-bash-4.1$ psql
psql (8.4.13)
"help" でヘルプを表示します.

postgres=# create user tsubaki;
CREATE ROLE
postgres=# select usename from pg_user;
 usename  
----------
 postgres
 sakura
 tsubaki
(3 行)

postgres=# create user ajisai with password 'ajisaipasswd';
CREATE ROLE
postgres=# select usename from pg_user;
 usename  
----------
 postgres
 sakura
 tsubaki
 ajisai
(4 行)

postgres=# 

アクセス権限やロールの設定に関しては、以下のリンク資料を参照してください。


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-03-20 (金) 22:08:00