↑↓ 选择↵ 打开⌫ 切换范围完整搜索

PG.CENTER 连接 PostgreSQL 文档、百科与生态知识。由 Pigsty 维护。

支持中的版本: 当前版本 (18) / 17 / 16 / 15 / 14
开发中的版本: 19 / 20devel
已结束支持的版本: 13 / 12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2 / 7.1 / 7.0 / 6.5 / 6.4
历史版本。 PostgreSQL 7.4 已结束支持。 请参阅 当前版本手册.

CREATE USER

CREATE USER — 定义一个新的数据库用户账号

大纲

CREATE USER name [ [ WITH ] option [ ... ] ]

where option can be:
    
      SYSID uid 
    | [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'password'
    | CREATEDB | NOCREATEDB
    | CREATEUSER | NOCREATEUSER
    | IN GROUP groupname [, ...]
    | VALID UNTIL 'abstime' 

描述

CREATE USER 向一个 PostgreSQL 数据库集簇中添加一个新用户。关于管理用户和认证的信息,请参阅第 17 章和第 19 章。你必须是数据库超级用户才能使用这个命令。

参数

name

用户的名称。

uid

SYSID 子句可以用来选择正被创建的用户的 PostgreSQL 用户 ID。通常这并不需要,但在你需要重新创建某个孤立对象的拥有者时可能有用。

如果没有指定,将默认使用已分配的最大用户 ID 加一(最小为 100)。

password

设置用户的口令。如果你不打算使用口令认证,可以省略这个选项,但那样的话,如果你以后决定切换到口令认证,该用户将无法连接。口令可以稍后设置或更改,使用ALTER USER。

ENCRYPTED
UNENCRYPTED

这些关键字控制口令在系统目录中是否以加密形式存储。(如果两者都未指定,默认行为由配置参数 PASSWORD_ENCRYPTION 决定。)如果给出的口令字符串已经是 MD5 加密格式,那么不管指定的是 ENCRYPTED 还是 UNENCRYPTED,它都会原样加密存储(因为系统无法解密所指定的加密口令字符串)。这允许在转储/恢复期间重新装载加密的口令。

注意,较老的客户端可能不支持处理以加密形式存储的口令所需的 MD5 认证机制。

CREATEDB
NOCREATEDB

这些子句定义用户创建数据库的能力。如果指定了 CREATEDB,将被定义的用户将被允许创建他自己的数据库。使用 NOCREATEDB 将拒绝用户创建数据库的能力。如果省略这个子句,默认使用 NOCREATEDB。

CREATEUSER
NOCREATEUSER

这些子句决定是否允许用户自己创建新用户。这个选项还会让该用户成为可以越过所有访问限制的超级用户。省略这个子句将把该用户的这个属性值设置为 NOCREATEUSER。

groupname

把该用户作为新成员插入其中的组的名称。可以列出多个组名。

abstime

VALID UNTIL 子句设置一个绝对时间,超过该时间后用户的口令不再有效。如果省略这个子句,登录将永久有效。

注意

使用ALTER USER更改用户的属性,使用DROP USER删除一个用户。使用ALTER GROUP把用户添加到组中或从组中移除用户。

PostgreSQL 包含一个程序createuser,它具有与 CREATE USER 相同的功能(事实上,它调用这个命令),但可以从命令 shell 运行。

示例

创建一个没有口令的用户:

CREATE USER jonathan;

创建一个带口令的用户:

CREATE USER davide WITH PASSWORD 'jw8s0F4';

创建一个带口令的用户,口令有效到 2004 年底。2005 年到来一秒之后,口令不再有效。

CREATE USER miriam WITH PASSWORD 'jw8s0F4' VALID UNTIL '2005-01-01';

创建一个用户可以创建数据库的账号:

CREATE USER manuel WITH PASSWORD 'jw8s0F4' CREATEDB;

兼容性

CREATE USER 语句是一种 PostgreSQL 扩展。SQL 标准把用户的定义留给实现。

报告文档问题

阅读 上游文档. 反馈更正前请先核对 当前版本手册.