<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # createuser ## Name createuser?--?創建一個新的PostgreSQL用戶帳戶 ## Synopsis `createuser` [`_connection-option_`...] [`_option_`...] [`_username_`] ## 描述 createuser創建一個新的PostgreSQL 用戶(更準確地說是一個角色)。 只有超級用戶和具有`CREATEROLE`權限的用戶可以創建新的用戶。 因此createuser必須由超級用戶或者是具有 `CREATEROLE`權限的用戶執行。 如果你想創建一個新的超級用戶,你必須以超級用戶身份連接, 而不僅僅是一個有`CREATEROLE`權限的用戶。 成為超級用戶就意味著將在數據庫里繞開所有訪問權限檢查,因此,不要輕易授予超級用戶權限。 createuser是對 SQL命令[CREATE ROLE](#calibre_link-10)的封裝。 因此,用哪種方法創建的用戶都一樣。 ## 選項 createuser接受下列命令行參數: `_username_` 指定要創建的PostgreSQL用戶名稱。 此名稱必須與本 PostgreSQL安裝的所有現有角色不同。 `-c` `_number_``--connection-limit=``_number_` 為新用戶設置最大數目的連接限制。缺省為無限制。 `-d` `--createdb` 允許該新用戶創建數據庫。 `-D` `--no-createdb` 禁止該新用戶創建數據庫。這是缺省(設置)。 `-e` `--echo` 回顯createuser生成并發送到服務端的命令。 `-E` `--encrypted` 加密存儲在數據庫中的用戶的密碼。 如果沒有指定,使用缺省設置。 `-i` `--inherit` 該新角色將自動繼承其所屬角色組的權限。這是缺省(設置)。 `-I` `--no-inherit` 該新角色將不會自動繼承他所屬角色組的權限。 `--interactive` 若沒有在命令行上指定用戶名,提示缺少用戶名。并且 `-d`/`-D`, `-r`/`-R`, `-s`/`-S`選項任何屬性沒有在命令行指定,也會提示缺少屬性(而不會使用缺省值)。 (PostgreSQL 9.1以前這是缺省的設置。) `-l` `--login` 該新用戶將允許登錄(也就是說,用戶名可以作為初始會話的用戶標識符)。這是缺省(設置)。 `-L` `--no-login` 該新用戶將不允許登錄。 (作為管理數據庫權限的手段,(設置)沒有登錄權限的角色仍然是有必要的。) `-N` `--unencrypted` 不加密存儲在數據庫中的用戶的密碼。 如果沒有指定,使用缺省設置 `-P` `--pwprompt` 如果給出(此選項),createuser將提示輸入新用戶的密碼。 如果不準備使用密碼認證方式,那么沒必要這么做。 `-r` `--createrole` 該新用戶將允許創建新角色 (即,該用戶將擁有`CREATEROLE`權限)。 `-R` `--no-createrole` 該新用戶將不能創建新角色。這是缺省(設置)。 `-s` `--superuser` 該新用戶將是一個超級用戶。 `-S` `--no-superuser` 該新用戶將不是一個超級用戶。這是缺省(設置)。 `-V` `--version` 輸出createuser命令的版本信息,然后退出。 `--replication` 該新用戶將擁有`REPLICATION`權限(即角色能啟動復制), 完整的描述見文檔[CREATE ROLE](#calibre_link-10)。 `--no-replication` 該新用戶將沒有`REPLICATION`權限(即角色不能啟動復制), 完整的描述見文檔[CREATE ROLE](#calibre_link-10)。 `-?` `--help` 顯示createuser命令的幫助信息,然后退出。 createuser還接受以下命令行選項用于連接參數: `-h` `_host_` `--host=``_host_` 指定運行服務端的主機名。如果數值以斜杠開頭則被用作到Unix域套接字的路徑。 `-p` `_port_` `--port=``_port_` 指定服務端偵聽的TCP端口或一個本地Unix域套接字文件的擴展(描述符)。 `-U` `_username_` `--username=``_username_` 進行聯接的用戶名(不是要創建的用戶名)。 `-w` `--no-password` 永遠不提示輸入密碼。 如果服務器要求密碼驗證和密碼 (并且)通過其他方式如 `.pgpass`文件(驗證)不可用, 則聯接嘗試將失敗。 此選項在不需要用戶輸入密碼的批處理作業和腳本中非常有用。 `-W` `--password` 強制createuser提示輸入密碼 (用于聯接到服務端,而不是新用戶的密碼)。 這個選項不是必須的,如果服務器要求認證密碼 createuser會自動提示需輸入密碼。 然而,createuser會浪費一個聯接嘗試判斷出該服務器需要密碼。 在某些情況下,這是值得鍵入`-W`以避免多余的聯接嘗試。 ## 環境變量 `PGHOST` `PGPORT` `PGUSER` 缺省的聯接參數 此實用工具,像大多其他的PostgreSQL實用工具, 還使用libpq支持的環境變量(見 [Section 31.14](#calibre_link-39))。 ## 診斷 如果有問題,將會顯示后端錯誤信息。參閱[CREATE ROLE](#calibre_link-10) 和[psql](#calibre_link-23)獲取可能的問題和錯誤消息的描述。 數據庫服務端必須運行在目標主機。此外,前端庫 libpq中的所有缺省連接設置和環境變量都將適用。 ## 示例 在缺省數據庫服務器上創建一個`joe`用戶: ``` <samp class="literal">$</samp> <kbd class="literal">createuser joe</kbd> ``` To create a user `joe` on the default database server with prompting for some additional attributes: ``` <samp class="literal">$</samp> <kbd class="literal">createuser --interactive joe</kbd> <samp class="literal">Shall the new role be a superuser? (y/n)</samp> <kbd class="literal">n</kbd> <samp class="literal">Shall the new role be allowed to create databases? (y/n)</samp> <kbd class="literal">n</kbd> <samp class="literal">Shall the new role be allowed to create more new roles? (y/n)</samp> <kbd class="literal">n</kbd> ``` 在主機`eden`端口5000的服務端里創建(跟上例)一樣`joe`用戶, 明確指定屬性,請看下列命令: ``` <samp class="literal">$</samp> <kbd class="literal">createuser -h eden -p 5000 -S -D -R -e joe</kbd> <samp class="literal">CREATE ROLE joe NOSUPERUSER NOCREATEDB NOCREATEROLE INHERIT LOGIN;</samp> ``` 創建超級用戶`joe`,并立即指定一個密碼: ``` <samp class="literal">$</samp> <kbd class="literal">createuser -P -s -e joe</kbd> <samp class="literal">Enter password for new role:</samp> <kbd class="literal">xyzzy</kbd> <samp class="literal">Enter it again:</samp> <kbd class="literal">xyzzy</kbd> <samp class="literal">CREATE ROLE joe PASSWORD 'md5b5f5ba1a423792b526f799ae4eb3d59e' SUPERUSER CREATEDB CREATEROLE INHERIT LOGIN;</samp> ``` 在上面例子中,雖然新密碼在輸入的時候實際上并不會回顯出來,但是我們還是明確的把它顯示出來了。 正如你看到的,密碼是加密后發送到客戶端。 如果使用選項`--unencrypted`密碼將會回顯出來 (也可能在服務器日志和其他地方), 所以在其他人能看到你的屏幕的時候不要使用`-e`選項。 ## 另請參閱 [dropuser](#calibre_link-45), [CREATE ROLE](#calibre_link-10)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看