createuser

Name

createuser  --  新しい Postgres ユーザを作成する。

Synopsis

createuser [ options ] [ username ]
  

入力

-h, --host host

postmaster が動作しているマシ ンのホスト名を指定します。

-p, --port port

postmaster が接続要求を監視してい るインターネット TCP/IP ポートもしくはローカルな Unix ドメイ ンソケットファイルの拡張子を指定します。

-e, --echo

createdb が生成しバックエンドに送 信する問い合わせを表示します。

-q, --quiet

応答を表示しません。

-d, --createdb

新規ユーザによるデータベース作成を許可します。

-D, --no-createdb

新規ユーザによるデータベース作成を許可しません。

-a, --adduser

新規ユーザによる他のユーザ作成を許可します。

-A, --no-adduser

新規ユーザによる他のユーザ作成を許可しません。

-P, --pwprompt

指定された場合、createuser は 新規ユーザ用のパスワードを促すプロンプトを表示します。 パスワード認証を使用する予定がなければ、これは必要ありま せん。

-i, --sysid uid

新規ユーザ用にデフォルト以外のユーザIDを設定することができます。 これは必要なものではありませんが、こういった設定を行なうサイトも あります。

username

作成する Postgres ユーザの名 前を指定します。 Postgres ユーザ全体で一意な名 前でなければなりません。

コマンドラインで何も指定しなかった場合、名前とその他必要な情 報の入力が促されます。

-h-p、及び、 -eオプションは psql にそのまま 渡されます。 psql-U、 及び、-W オプションも同様に使用できますが、 このコマンドでこのオプションを使用することは混乱を招きます。

出力

CREATE USER

正常終了。

createuser: creation of user "username" failed

何らかの失敗。ユーザは作成されません。

エラー条件があれば、バックエンドからのエラーメッセージが表 示されます。 この場合に表示されるメッセージについては、 CREATE USER 、及び、 psql を参照 して下さい。

説明

createuser は新規に Postgres ユーザを作成します。 pg_shadow クラスにて usesuper が設定されたユーザのみが、 新規に Postgres ユーザを作 成することができます。

createuser は、その内部で Postgres の対話式端末プログラム psql を使用し て CREATE USER SQL コマンドを実行するシェルスクリプトです。 従って、このプログラムによるユーザの作成とこの他の方法による作 成とでは何も違いはありません。 このことは、このスクリプトから psql が検索できなければならないことと対象ホスト上でデータベースサー バが動作していなければならないことを意味します。 また、psql 及び libpq フロントエンドライブラリで適用 される全てのデフォルト設定と環境変数が利用可能です。

使用法

デフォルトのデータベースサーバ上に joe ユーザを作成します。

$ createuser joe
Is the new user allowed to create databases? (y/n) n
Shall the new user be allowed to create more new users? (y/n) n
CREATE USER
   

ホスト eden 、ポート 5000 で動作している postmaster から joe ユーザを作成します。またこの時、プ ロンプトの表示は行なわれず、そして、バックエンドに送られ る問い合わせが表示されます。

$ createuser -p 5000 -h eden -D -A -e joe
CREATE USER "joe" NOCREATEDB NOCREATEUSER
CREATE USER