↑↓ 选择 ↵ 打开 ⌫ 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

百科 / 命令行工具 / 客户端程序

dropuser

dropuser — 移除一个 PostgreSQL 用户账户

当前查看 PostgreSQL 18.6。

说明

dropuser — 移除一个 PostgreSQL 用户账户

手册中的可执行程序
dropuser
程序版本
18.6
参考清单
客户端程序
选项定义组
10

用法

dropuser [ connection-option ...] [ option ...] [ username ]

手册中的选项

选项与参数说明
-e --echo回显 dropuser 生成并发送给服务器的命令。
-i --interactive在实际移除该用户之前提示确认;如果命令行中未指定用户名,也会提示输入用户名。
-V --version打印 dropuser 版本并退出。
--if-exists如果该用户不存在,则不要抛出错误。这种情况下会发出一个提示。
-? --help显示有关 dropuser 命令行参数的帮助并退出。
-h host --host= host指定服务器运行所在主机的主机名。如果该值以斜杠开头,则它将被用作 Unix 域套接字所在目录。
-p port --port= port指定服务器监听连接所用的 TCP 端口或本地 Unix 域套接字文件扩展名。
-U username --username= username用于连接的用户名(不是要删除的用户名)。
-w --no-password从不发出密码提示。如果服务器要求密码认证,而密码又无法通过诸如 .pgpass 文件之类的其他方式获得,则连接尝试将失败。该选项适合没有用户在场输入密码的批处理作业和脚本。
-W --password强制 dropuser 在连接到数据库之前提示输入密码。

环境变量

变量含义
PGHOST PGPORT PGUSER默认连接参数
PG_COLOR指定诊断消息是否使用颜色。可选值为 always 、 auto 和 never 。

手册定义

dropuser

dropuser — 移除一个PostgreSQL用户账户

大纲

dropuser [connection-option...] [option...] [username]

说明

dropuser删除一个现有的 PostgreSQL用户。超级用户可以使用此命令删除任何角色;否则,只能删除非超级用户角色,而且只有拥有 CREATEROLE权限并已被授予目标角色上的 ADMIN OPTION的用户才能这样做。

dropuser是SQL命令 DROP ROLE的包装器。通过此工具删除用户与通过其他访问服务器的方法删除用户,在效果上并无区别。

选项

dropuser接受下列命令行参数:

username

指定要移除的PostgreSQL用户名。如果命令行中未指定名称,且使用了-i/--interactive选项,则会提示输入名称。

-e
--echo

回显dropuser生成并发送给服务器的命令。

-i
--interactive

在实际移除该用户之前提示确认;如果命令行中未指定用户名,也会提示输入用户名。

-V
--version

打印dropuser版本并退出。

--if-exists

如果该用户不存在,则不要抛出错误。这种情况下会发出一个提示。

-?
--help

显示有关dropuser命令行参数的帮助并退出。

dropuser也接受下列用于连接参数的命令行参数:

-h host
--host=host

指定服务器运行所在主机的主机名。如果该值以斜杠开头,则它将被用作 Unix 域套接字所在目录。

-p port
--port=port

指定服务器监听连接所用的 TCP 端口或本地 Unix 域套接字文件扩展名。

-U username
--username=username

用于连接的用户名(不是要删除的用户名)。

-w
--no-password

从不发出密码提示。如果服务器要求密码认证,而密码又无法通过诸如 .pgpass文件之类的其他方式获得,则连接尝试将失败。该选项适合没有用户在场输入密码的批处理作业和脚本。

-W
--password

强制dropuser在连接到数据库之前提示输入密码。

这个选项绝非必需,因为如果服务器要求密码认证,dropuser会自动提示输入密码。不过,dropuser会浪费一次连接尝试来发现服务器需要密码。在某些情况下,输入-W值得一试,以避免这次额外的连接尝试。

环境

PGHOST
PGPORT
PGUSER

默认连接参数

PG_COLOR

指定诊断消息是否使用颜色。可选值为 always、auto和 never。

与大多数其他 PostgreSQL 工具一样,此工具也使用 libpq 支持的环境变量(见第 32.15 节)。

诊断

如果遇到问题,请参见DROP ROLE和psql中关于潜在问题和错误消息的讨论。数据库服务器必须在目标主机上运行。此外,libpq前端库所使用的任何默认连接设置和环境变量都会生效。

示例

要从默认数据库服务器上移除用户joe:

$ dropuser joe

使用主机 eden 上端口为 5000 的服务器删除用户 joe,要求确认并查看底层命令:

$ dropuser -p 5000 -h eden -i -e joe
Role "joe" will be permanently removed.
Are you sure? (y/n) y
DROP ROLE joe;

文档与源码

来源构建
版本
18.6
构建
https://ftp.postgresql.org/pub/source/v18.6/postgresql-18.6.tar.bz2
来源指纹
ee8d1a3612338fd9adf250730cb640fcc5233b5491337cc00a316a44e3a0b9f8

版本比较

PostgreSQL 11 → 12: 属性变化。

以下差异保留原始字段名与英文源描述。

--- PostgreSQL 11
+++ PostgreSQL 12
@@ -3,6 +3,10 @@
     {
       "description": "Default connection parameters",
       "name": "PGHOST PGPORT PGUSER"
+    },
+    {
+      "description": "Specifies whether to use color in diagnostic messages. Possible values are always , auto and never .",
+      "name": "PG_COLOR"
     }
   ],
   "options": [

比较已记录的接口与属性,排除来源指纹和构建元数据。某个样本中没有记录,不能据此判断实际引入或移除的版本。

相关条目

导出 JSON · 返回命令行工具 · 收录范围为 PostgreSQL 10 至 20;最早采样版本不一定是实际引入版本。