dropuser

Name

dropuser -- 删除一个用户账户

Synopsis

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

描述

dropuser删除一个PostgreSQL用户。 只有超级用户和拥有CREATEROLE权限的用户可以删除用户。 要删除一个超级用户,你必须首先是超级用户。

dropuserSQL命令 DROP ROLE的封装。因此,用哪种方法删除用户都一样。

选项

dropuser接受下列命令行参数:

username

声明要删除的PostgreSQL用户名。如果你没有在命令行上声明, 将会被提示输入一个。

-e
--echo

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

-i
--interactive

在真正删除用户前提示。

-V
--version

输出dropuser版本并推出。

-?
--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

缺省链接参数。

该工具跟大部分其他PostgreSQL工具一样,也是用libpq 支持的环境变量(参阅Section 31.13)。

诊断

如果出现错误,将会显示后端错误信息。参阅DROP ROLEpsql获取可能的信息描述。数据库服务器必须在目标主机上运行。 同样,任何libpq前端库可获得的缺省设置和环境变量都将生效。

例子

删除缺省数据库服务器上的joe用户:

$ dropuser joe

在主机eden上删除joe用户,端口是5000,执行命令前提示并且回显执行的命令:

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

又见

createuser, DROP ROLE