.\" auto-generated by docbook2man-spec $Revision: 1.1 $ .TH "ALTER USER" "7" "2003-11-02" "SQL - Language Statements" "SQL Commands" .SH NAME ALTER USER \- 改变数据库用户帐号 .SH SYNOPSIS .sp .nf ALTER USER \fIname\fR [ [ WITH ] \fIoption\fR [ ... ] ] where \fIoption\fR can be: [ ENCRYPTED | UNENCRYPTED ] PASSWORD '\fIpassword\fR' | CREATEDB | NOCREATEDB | CREATEUSER | NOCREATEUSER | VALID UNTIL '\fIabstime\fR' ALTER USER \fIname\fR RENAME TO \fInewname\fR ALTER USER \fIname\fR SET \fIparameter\fR { TO | = } { \fIvalue\fR | DEFAULT } ALTER USER \fIname\fR RESET \fIparameter\fR .sp .fi .SH "DESCRIPTION 描述" .PP \fBALTER USER\fR 用于更改用户的 PostgreSQL 帐号的属性。 没有在该命令中出现的属性保持原值。 .PP 这条命令模式中的第一个变种修改某些全局用户权限和认证设置。 (见下文获取细节。)只有数据库超级用户可以用这条命令改变这些权限和使口令失效。普通用户只能修改它们自己的口令。 .PP 第二个变种改变用户的名字。只有数据库超级用户才能重新命名用户帐户。 当前会话用户不能重命名。(如果想这么干,先用另外一个用户账号连接。) .PP 第三和第四个变种修改用户会话的特定配置变量的缺省值。 当该用户随后启动一个新的会话时,声明的数值将成为会话的缺省,覆盖 任何出现在 postgresql.conf 里,或者从 postmaster 命令行接收到的设置。 普通用户可以修改它们自己的会话缺省。超级用户可以修改任何用户的缺省。 .SH "PARAMETERS 参数" .TP \fB\fIname\fB\fR 想进行属性更改的用户名字。 .TP \fB\fIpassword\fB\fR 此帐号所使用的新口令。 .TP \fBENCRYPTED\fR .TP \fBUNENCRYPTED\fR 这些关键字控制口令是否以加密形式存在 pg_shadow 里。 (参阅 CREATE USER [\fBcreate_user\fR(7)] 获取这个选项的更多信息。) .TP \fBCREATEDB\fR .TP \fBNOCREATEDB\fR 这个子句定义该用户创建数据库的能力。 如果声明了CREATEDB,该用户可以创建她自己的数据库。 用NOCREATEDB将剥夺一个用户创建数据库的能力。 .TP \fBCREATEUSER\fR .TP \fBNOCREATEUSER\fR 这个子句决定一个用户能否创建新用户。 这个选项同样还令该用户成为超级用户,可以超越所有访问限制。 .TP \fB\fIabstime\fB\fR 该用户帐号口令的过期的日期(和可选的时间)。 要设置一个口令从不过期,可以用'infinity'。 .TP \fB\fInewname\fB\fR 用户的新名字。 .TP \fB\fIparameter\fB\fR .TP \fB\fIvalue\fB\fR 把该用户特定的配置变量的会话缺省设置为给定的数值。 如果 value 为 DEFAULT 或者使用了等效的 RESET,那么删除用户相关的变量, 并且该用户将在新会话中继承缺省设置。使用 RESET ALL 清除所有设置。 参阅 SET [\fBset\fR(7)] 和 Section 16.4 ``Run-time Configuration'' 获取有关可用变量和数值的更多信息。 .SH "NOTES 注意" .PP 使用 CREATE USER [\fBcreate_user\fR(7)] 创建新用户和 DROP USER [\fBdrop_user\fR(7)] 删除用户。 .PP \fBALTER USER\fR 无法改变一个用户的组的成员性。 用 ALTER GROUP [\fBalter_group\fR(7)] 实现这个目地。 .PP 使用 ALTER DATABASE [\fBalter_database\fR(7)],我们还可能把一个会话缺省和某个数据库绑定起来,而不是和某个用户绑定。 .SH "EXAMPLES 例子" .PP 更改一用户口令: .sp .nf ALTER USER davide WITH PASSWORD 'hu8jmn3'; .sp .fi .PP 更改一用户有效期: .sp .nf ALTER USER manuel VALID UNTIL 'Jan 31 2030'; .sp .fi .PP 更改一用户有效期, 声明其权限应该在用比UTC早一小时的时区记时的 2005 年 5 月 4 日正午失效 .sp .nf ALTER USER chris VALID UNTIL 'May 4 12:00:00 2005 +1'; .sp .fi .PP 令用户永远有效: .sp .nf ALTER USER fred VALID UNTIL 'infinity'; .sp .fi .PP 赋予一用户创建新用户和新数据库的权限: .sp .nf ALTER USER miriam CREATEUSER CREATEDB; .sp .fi .SH "COMPATIBILITY 兼容性" .PP \fBALTER USER\fR 语句是 PostgreSQL 扩展。SQL 标准将用户的定义交给实现完成。 .SH "SEE ALSO 参见" CREATE USER [\fBcreate_user\fR(7)], DROP USER [\fBdrop_user\fR(l)], SET [\fBset\fR(l)] .SH "译者" .B Postgresql 中文网站 .B 何伟平 .SH "跋" .br 本页面中文版由中文 man 手册页计划提供。 .br 中文 man 手册页计划:\fBhttps://github.com/man-pages-zh/manpages-zh\fR