dropuserは、存在するPostgreSQLユーザを削除し、それと一緒にそのユーザが所有していたデータベースも削除します。 スーパーユーザ(pg_shadowシステムカタログでusesuper権限があるユーザ)のみがPostgreSQLユーザを削除することができます。
dropuserはDROP USER SQLコマンドを隠したラッパです。 このユーティリティを使用してもこの方法以外の方法でサーバでアクセスしてユーザの削除を行っても特別な違いはありません。
dropuserは、下記のコマンドライン引数を受け付けます。
削除するPostgreSQLユーザ名を指定します。 コマンドラインでその指定が行われなかった場合には入力のためにプロンプトが表示されます。
dropuserが生成し、サーバに送信するコマンドを表示します。
実際にユーザを削除する前に確認のプロンプトを表示させます。
応答を表示させないようにします。
dropuserは以下のコマンドライン引数も接続パラメータとして受け付けます。
サーバが稼働しているマシンのホスト名を指定します。 この値がスラッシュから始まる場合、Unixドメインソケット用のディレクトリとして使用されます。
サーバが接続を監視するTCPポートもしくはUnixドメインソケットのファイル拡張子を指定します。
接続に使用するユーザ名です。 (削除するユーザ名ではありません。)
パスワードのプロンプトを強制します (削除するユーザのパスワードではなくサーバに接続するためのパスワードです)。
問題が発生した場合、潜在する問題とエラーメッセージについてはDROP USERとpsqlを参照してください。 データベースサーバは対象ホスト上で稼働していなければなりません。 また、libpqフロントエンドライブラリで使用される、あらゆるデフォルトの設定や環境変数が適用されます。
デフォルトのデータベースサーバからjoeユーザを削除します。
$ dropuser joe DROP USER
ホストedenでポート5000を使用しているサーバからjoeユーザを削除します。 また、この時、背後で実行されるコマンドを表示し、また、削除前に確認が促されます。
$ dropuser -p 5000 -h eden -i -e joe User "joe" and any owned databases will be permanently deleted. Are you sure? (y/n) y DROP USER "joe" DROP USER