2017-05-02 74 views
3

我對root用戶超級用戶用戶權限非常困惑!我無法在用戶「athleticu」內創建數據庫。以下是我使用的命令: -CREATEDB:數據庫創建失敗:ERROR:許可被拒絕創建數據庫

[email protected]:/home/ubuntu$ createdb -T template0 simple_db1 
createdb: database creation failed: ERROR: permission denied to create database 
[email protected]:/home/ubuntu$ sudo createdb -T template0 simple_db1 
sudo: unable to resolve host ip-172-30-4-103 
createdb: could not connect to database template1: FATAL: role "root" does not exist 

請有人澄清我的疑惑,並告訴我該寫什麼!

+0

你確定這是服務器的正確地址:「無法解析主機-172-30-4-103」? – patrick

+0

您需要使用postgres超級用戶進行連接。通常是'postgres'。嘗試'createdb -U postgres ....' –

+0

其實我正在使用以下命令連接到AWS機器的一個實例: - 'sudo ssh -i「athleticu-test-keypair.pem」ubuntu @ 52.91.xxx.xxx'然後它是像這樣:'ubuntu @ ip-172-30-4-103:〜$'@patrick – SonamGupta

回答

2

root用戶是系統中獨立於Postgres的帳戶。只有一個root用戶。

A 超級用戶是Postgres中的帳戶,可以訪問所有內容。可能有許多超級用戶。

系統帳戶和Postgres賬戶是不同的東西,但除非你當你連接到數據庫(通過實用工具,比如psqlcreatedbdropdb,或以其他方式)指定一個Postgres用戶名,將在希望使用當前系統用戶名即有相應的Postgres帳戶具有相同的名稱。默認情況下,根用戶在Postgres中不具有相應的帳戶。

當你在* nix安裝Postgres的,它都將創建超級命名爲postgres,並命名爲postgres系統用戶。

因此,當你需要與Postgres一起做一些事情的內置超級用戶,你有兩個選擇:

  1. 您可能sudo su - postgres成爲postgres系統用戶和執行你的命令(createdbpsql等)。由於系統用戶與數據庫超級用戶具有相同的名稱,因此您的命令將作爲相應的帳戶進行連接。
  2. 您可以指定與-U交換機一樣執行的用戶名,例如psql -U postgres ...

根據您的Postgres服務器的身份驗證設置,您可能需要輸入一個或兩個連接方法的密碼。

+0

嘿非常感謝! '當你在* nix上安裝Postgres時 - 在你的評論中'* nix'是什麼意思?這是否意味着Unix/Linux?和有關在Ubuntu上使用postgres?請再澄清一點! @dmfay – SonamGupta

+0

* nix指任何派生自或與Unix相關的操作系統,包括各種Linux發行版(其中Ubuntu是其中之一),BSD和Mac OS X. – dmfay

5

嘿,我已經解決了這個問題。你所要做的就是先登錄的用戶的Postgres如下: - [email protected]:~$ su postgres Password: [email protected]:/home/ubuntu$ psql psql (9.5.3) Type "help" for help. postgres=# alter user athleticu createdb; ALTER ROLE

希望它可以幫助你:)

0

類型\du在psql裏,你會看到所有註冊用戶的列表,並每個人擁有什麼類型的特權。 爲了授予登錄用戶權限(例如'user1'),我必須使用以下命令註銷並使用該列表中的某個超級用戶角色(例如'user2')登錄:

psql -U 'user2' -h localhost 'database2' 

其中'database2'是特定超級用戶'user2'有權訪問的名稱。

ALTER ROLE user1 WITH CREATEDB 

ALTER ROLE user1 WITH SUPERUSER 

話又說回來爲USER1,誰現在是超級用戶登錄: 一旦你登錄爲超級用戶,則可以通過權限授予「USER1」。

這個blog是有幫助的,以及這link

相關問題