2012-03-23 89 views
15

在Postgres的安裝它告訴我做以下密碼的Postgres

./configure 
gmake 
su 
gmake install 
adduser postgres 
mkdir /usr/local/pgsql/data 
chown postgres /usr/local/pgsql/data 
su - postgres 
/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data 
/usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data >logfile 2>&1 & 
/usr/local/pgsql/bin/createdb test 
/usr/local/pgsql/bin/psql test 

的短版。現在我創建了postgres用戶,但它有時會要求我的憑據,該user。是否有postgres用戶的默認密碼?爲什麼我甚至需要製作另一個user

+0

我看到一個關閉,我應該遷移到'嚴重故障'還是'超級用戶'? – Doboy 2012-03-23 06:14:46

回答

32

What's the default superuser username/password for postgres after a new install?

注意有關通過 「$ sudo的passwd文件的Postgres」 爲 「Postgres的」 改變UNIX密碼答案是不理想,甚至可以危險

這就是爲什麼:默認情況下,UNIX帳戶「postgres」被鎖定,這意味着它不能使用密碼登錄。如果您使用「sudo passwd postgres」,則該帳戶立即解鎖。更糟糕的是,如果你把密碼設置爲弱,比如「postgres」,那麼你將面臨很大的安全隱患。例如,有很多機器人嘗試使用用戶名/密碼組合「postgres/postgres」登錄到您的UNIX系統。

你應該做的就是按照克里斯詹姆斯的回答是:

sudo -u postgres psql postgres 

# \password postgres 

Enter new password: 

解釋這一點...

+3

tl; dr'sudo passwd postgres'設置密碼 – hughes 2014-01-11 20:37:02

+33

通過一切手段讀取鏈接的答案,'sudo passwd postgres' should * not * be *,'run'sudo -u postgres psql postgres'並輸入'\ password postgres '。 – hlovdal 2014-02-12 00:16:51

+1

不適合我...我得到這個:「postgres不在sudoers文件中,這個事件會被報告。」 – rikkitikkitumbo 2016-10-31 04:46:44

2

設置在.pgpass文件的默認密碼。如果服務器未保存密碼,這是因爲它未在.pgpass文件中設置,或者權限已打開,因此文件被忽略。

查看更多about the password file here

另外,一定要檢查權限:在* nix系統上,.pgpass上的權限必須禁止任何對世界或組的訪問;通過命令chmod 0600〜/ .pgpass來實現。如果權限不如此嚴格,則該文件將被忽略。

您是否嘗試過使用PGAdmin登錄?您可以在那裏保存密碼,並修改pgpass文件。

+1

謝謝!這個工作對我來說Windows 8.1 – juvchan 2016-02-21 12:48:40

+0

@juvchan,我沒有在Windows 8.1上試過它。很高興它對你有效! – MAbraham1 2016-02-22 15:24:43

相關問題