Provided by: manpages-zh_1.5.1-2_all bug

NAME

       ALTER USER - 改变数据库用户帐号

SYNOPSIS

       ALTER USER name [ [ WITH ] option [ ... ] ]

       where option can be:

           [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'password'
           | CREATEDB | NOCREATEDB
           | CREATEUSER | NOCREATEUSER
           | VALID UNTIL 'abstime'

       ALTER USER name RENAME TO newname

       ALTER USER name SET parameter { TO | = } { value | DEFAULT }
       ALTER USER name RESET parameter

DESCRIPTION述
       ALTER       USER       用于更改用户的      PostgreSQL      帐号的属性。
       没有在该命令中出现的属性保持灾怠

        这条命令模式中的第一个变种修改某些全局用户权限和认证设置。
       (见下文获取细节。)只有数据库超级用户可以用这条命令改变这些权限和使口令失效。普通用户只能修改它们自己的口令。

        第二个变种改变用户的名字。只有数据库超级用户才能重新命名用户帐户。
       当前会话用户不能重命名。(如果想这么干,先用另外一个用户账号连接。)

        第三和第四个变种修改用户会话的特定配置变量的缺省值。
       当该用户随后启动一个新的会话时,声明的数值将成为会话的缺省,覆盖
       任何出现在  postgresql.conf 里,或者从 postmaster  命令行接收到的设置。
       普通用户可以修改它们自己的会话缺省。超级用户可以修改任何用户的缺省。

PARAMETERS数
       name    想进行属性更改的用户名字。

       password
               此帐号所使用的新口令。

       ENCRYPTED

       UNENCRYPTED
               这些关键字控制口令是否以加密形式存在  pg_shadow   里。   (参阅
              CREATE USER [create_user(7)] 获取这个选项的更多信息。)

       CREATEDB

       NOCREATEDB
               这个子句定义该用户创建数据库的能力。
              如果声明了CREATEDB,该用户可以创建她自己的数据库。
              用NOCREATEDB将剥夺一个用户创建数据库的能力。

       CREATEUSER

       NOCREATEUSER
               这个子句决定一个用户能否创建新用户。
              这个选项同样还令该用户成为超级用户,可以超越所有访问限制。

       abstime
               该用户帐号口令的过期的日期(和可选的时间)。
              要设置一个口令从不过期,可以用'infinity'。

       newname
               用户的新名字。

       parameter

       value    把该用户特定的配置变量的会话缺省设置为给定的数值。  如果 value
              为  DEFAULT   或者使用了等效的   RESET,那么删除用户相关的变量,
              并且该用户将在新会话中继承缺省设置。使用        RESET        ALL
              清除所有设置。

               参阅 SET [set(7)] 和 Section  16.4  ``Run-time  Configuration''
              获取有关可用变量和数值的更多信息。

NOTES意
        使用    CREATE    USER   [create_user(7)]   创建新用户和   DROP   USER
       [drop_user(7)] 删除用户。

       ALTER    USER    无法改变一个用户的组的成员性。    用    ALTER    GROUP
       [alter_group(7)] 实现这个目地。

        使用                           ALTER                          DATABASE
       [alter_database(7)],我们还可能把一个会话缺省和某个数据库绑定起来,而不是和某个用户绑定。

EXAMPLES子
        更改一用户口令:

       ALTER USER davide WITH PASSWORD 'hu8jmn3';

        更改一用户有效期:

       ALTER USER manuel VALID UNTIL 'Jan 31 2030';

        更改一用户有效期, 声明其权限应该在用比UTC早一小时的时区记时的 2005 年
       5 月 4 日正午失效

       ALTER USER chris VALID UNTIL 'May 4 12:00:00 2005 +1';

        令用户永远有效:

       ALTER USER fred VALID UNTIL 'infinity';

        赋予一用户创建新用户和新数据库的权限:

       ALTER USER miriam CREATEUSER CREATEDB;

COMPATIBILITY 性
       ALTER USER 语句是 PostgreSQL 扩展。SQL 标准将用户的定义交给实现完成。

SEE ALSO见
       CREATE USER [create_user(7)], DROP USER [drop_user(l)], SET [set(l)]

者
       Postgresql  <laser@pgsqldb.org>