Provided by: manpages-zh_1.5.2-1.1_all bug

NAME

       CREATE USER - 創建一個新的數據庫使用者帳戶

SYNOPSIS

       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'

DESCRIPTION 描述

       CREATE  USER  向一個  PostgreSQL   數據庫集群增加一個新使用者。 參考 Chapter 17 ``Database
       Users and Privileges''  和 Chapter 19 ``Client Authentication''   獲取關於管理使用者和認証
       的信息。 要執行這條命令,你必須是一個數據庫超級使用者。

PARAMETERS 參數

       name
               使用者名

       uid    SYSID  子句可以用於選擇正在被創建的使用者的  PostgreSQL 使用者標識。 通常這是不必要
              的,但是如果你想恢復一個孤兒對象的所有者,也許這個很有用。

               如果沒有聲明這個,預設使用已分配的最高使用者標識加一(最小是 100)。

       password
               設置使用者的口令,如果你不準備使用口令認証,  那麼你可以省略這個選項,但如果你想切
              換到一個口令認証的伺服器,那麼該使用者將不能聯接。     此口令可以稍後再次設置或者修
              改,使用 ALTER USER [alter_user(7)]。

       ENCRYPTED

       UNENCRYPTED
              控制口令在數據庫中是否以加密形式存儲在系統表中。 (如果兩個都沒有設置,那麼預設的特
              性是由配置參數  password_encryption  決定的。)  如果提供的字串已經是  MD5 加密的格
              式,那麼就照原樣存儲, 不管聲明的是  ENCRYPTED  還是  UNENCRYPTED。  這樣就允許在轉
              儲/恢復的過程中重載加密後的口令。

               請注意老的客戶端可能缺少 MD5 認証機制,我們需要這個認証機制處理存儲為密文的口令。

       CREATEDB

       NOCREATEDB
              這個子句定義使用者的創建數據庫權限。  如果聲明了CREATEDB, 被定義的使用者將允許創建
              其自己的數據庫。  而使用NOCREATEDB將否決該使用者的創建數據庫的能力。   如果忽略本子
              句,預設是NOCREATEDB。

       CREATEUSER

       NOCREATEUSER
               該子句決定一個使用者是否能創建一個新的使用者。  這個選項同樣把此使用者變成數據庫超
              級使用者,可以跨越所有訪問限制。省略這個參數將置使用者的這個屬性為 NOCREATEUSER。

       groupname
               一個組名稱,把這個使用者設為該組成員。 你可以列出多個組名字。

       abstime
              VALID UNTIL  (有效期)子句設置一個絕對時間,  過了該時間後使用者的口令將不再有效。
              如果省略這個子句,登陸將總是有效的。

NOTES 注意

        使用 ALTER USER [alter_user(7)] 修改使用者的口令和權限,DROP USER [drop_user(7)] 刪除一個
       使用者。 使用 ALTER GROUP [alter_group(l)] 從組中增加或刪除使用者。

       PostgreSQL  裏有一個程式 createuser [createuser(1)] 與CREATE USER 有相同的功能(實際上,它
       調用這條命令), 但是可以在命令行上運行。

EXAMPLES 例子

        創建一個沒有口令的使用者:

       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;

COMPATIBILITY 相容性

       CREATE USER 語句是 PostgreSQL 擴展。 SQL 標準把使用者的定義交給具體實現處理。

SEE ALSO 參見

       ALTER USER [alter_user(7)], DROP USER [drop_user(l)], createuser(1)

譯者

       Postgresql 中文網站 何偉平 <laser@pgsqldb.org>