#navi(../)
* PostgreSQLでユーザを追加(作成)する方法 [#td4d6339]
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 行)
#contents
#htmlinsertpcsp(db-top.html,db-sp.html)
* 関連資料・関連記事 [#ud8b90c5]
-[[PostgreSQLでユーザを削除する方法>PostgreSQL/PostgreSQLでユーザを削除する方法]]
-[[PostgreSQLでユーザのロールを変更する・ALTER ROLE, ALTER USER>PostgreSQL/PostgreSQLでユーザのロールを変更する]]
-[[PostgreSQLでテーブルに対してのアクセス権限を設定する・GRANT,REVOKE>PostgreSQL/テーブルに対してのアクセス権限を設定する・GRANT,REVOKE]]
* createuserコマンドでユーザを作成する [#g9768b2e]
postgresユーザにsuしcreateuserコマンドでユーザを作成してみます。
** postgresユーザにsuする [#ge395c39]
postgresユーザにパスワードを設定していないため、以下の操作でpostgresユーザにsuしました。
[sakura@centos6 ~]$ su -
パスワード:
[root@centos6 ~]# su - postgres
-bash-4.1$
** createuserコマンドを使ってみる [#ubb71612]
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でユーザ追加を行う [#u77d52fc]
ユーザ追加を行う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=#
アクセス権限やロールの設定に関しては、以下のリンク資料を参照してください。
-[[PostgreSQLでユーザのロールを変更する・ALTER ROLE>PostgreSQL/PostgreSQLでユーザのロールを変更する]]
-[[PostgreSQLでテーブルに対してのアクセス権限を設定する・GRANT,REVOKE>PostgreSQL/テーブルに対してのアクセス権限を設定する・GRANT,REVOKE]]
#htmlinsertpcsp(db-btm.html,db-sp.html)