2015-09-03 40 views
1

我在閱讀本教程時HERE。有下面的命令登錄的用戶:「角色」在postgresql中不存在

# login as user "user" 
psql -U user 

當我執行上面的命令,我得到一個錯誤說以下內容:

psql: FATAL: role "user" does not exist 

我看到的唯一的在線幫助爲HERE時,紛紛表示如下:

FATAL:角色 「名爲myUsername」 不存在

默認情況下,PostgreSQL使用與當前unix用戶相同的 名稱連接到PostgreSQL用戶。您尚未在數據庫中按該名稱創建PostgreSQL用戶 。

創建一個合適的用戶,或指定一個不同的用戶名連接 。在命令行工具中,-U標誌執行此操作。

但我還是不太明白,爲什麼我得到這個錯誤,有人能幫我理解這個請。

謝謝。

+0

連接你得到的錯誤,因爲您尚未創建名稱爲「user」的用戶。 – dsh

回答

3

請檢查用戶是否存在。

\dg 

如果不是,您需要在教程中缺少的內容,並在必要時對其進行編輯。

CREATE USER user WITH PASSWORD '<here you password>'; 
3

你必須先在Linux shell作爲用戶postgres登錄並不是創建新的Postgres用戶與命令createuser。系統用戶postgres由Postgres安裝程序自動創建。

執行控制檯中的代碼(變化your_username與您選擇的用戶名):

sudo -u postgres -i 
createuser -l -d -P your_username 

更好地創建具有相同名稱過於數據庫(這使得登錄後更容易):

createdb your_username -O your_username 

那麼你應該能夠在PSQL與

psql -h localhost -U your_username 
相關問題