PostgreSQLユーザーアカウントを一覧表示するコマンド?

createuser & dropuserコマンド:

createuser - define a new PostgreSQL user account dropuser - remove a PostgreSQL user account 

ユーザーアカウントを一覧表示する対応する方法はありますか?

これら2つのコマンドにはありませんユーザーにpsqlを呼び出すか、使用の詳細を理解するように要求します。

回答

psqlシェルを使用し、次のようにします:

\deu[+] [PATTERN]

postgres=# \deu+ List of user mappings Server | User name | FDW Options --------+-----------+------------- (0 rows) 

すべてのユーザーの場合:

postgres=# \du List of roles Role name | Attributes | Member of ------------+------------------------------------------------+----------- chpert.net | | {} postgres | Superuser, Create role, Create DB, Replication | {} 

MySQLなどでも、次のことができます:

$ psql -c "\du" List of roles Role name | Attributes | Member of -----------+------------------------------------------------+----------- chpert | | {} postgres | Superuser, Create role, Create DB, Replication | {} test | | {} 

コメント

  • ターミナルから:psql -c '\du'

回答

出力をユーザー名のみに制限するには、psqlシェルまたはローカルシェル/ターミナルから

psql -c "SELECT u.usename AS "User Name" FROM pg_catalog.pg_user u;" 

クイックm前の回答で指摘したように、ethodは3列を表示します。 ユーザー名ロール属性のリスト、および ロールグループのメンバー。

psql -c "\du" 

最後に、後続の回答で指摘されているように、\duコマンドのバックグラウンドで実行されるPostgreSQLコマンドは、次の呼び出しによってこれらの「デフォルト」列を表示します。

SELECT u.usename AS "User name", u.usesysid AS "User ID", CASE WHEN u.usesuper AND u.usecreatedb THEN CAST("superuser, create database" AS pg_catalog.text) WHEN u.usesuper THEN CAST("superuser" AS pg_catalog.text) WHEN u.usecreatedb THEN CAST("create database" AS pg_catalog.text) ELSE CAST("" AS pg_catalog.text) END AS "Attributes" FROM pg_catalog.pg_user u ORDER BY 1; 

(\ duと入力したときにpsqlが舞台裏で行うこと)

最後の部分は PostgreSQLメーリングリストからコピーされました。

回答

簡単な回答の場合…

psql内から:

\du 

ターミナルから:

psql -c "\du" 

d は d 何かを記述し、 u u sers。

回答

SQLソリューション。通常はpsql \ duによって実行されます:

SELECT u.usename AS "User name", u.usesysid AS "User ID", CASE WHEN u.usesuper AND u.usecreatedb THEN CAST("superuser, create database" AS pg_catalog.text) WHEN u.usesuper THEN CAST("superuser" AS pg_catalog.text) WHEN u.usecreatedb THEN CAST("create database" AS pg_catalog.text) ELSE CAST("" AS pg_catalog.text) END AS "Attributes" FROM pg_catalog.pg_user u ORDER BY 1; 

参照: https://www.postgresql.org/message-id/[email protected]

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です