在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 :(得分:38)
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系统。
你应该做的是按照 Chris James 的回答:
sudo -u postgres psql postgres # \password postgres Enter new password:
稍微解释一下......
答案 1 :(得分:2)
在.pgpass文件中设置默认密码。如果服务器没有保存密码,那是因为它没有在.pgpass文件中设置,或者权限是打开的,因此忽略了文件。
此外,请务必检查权限:在* nix系统上,.pgpass上的权限必须禁止对世界或群组的任何访问;通过命令chmod 0600~ / .pgpass实现此目的。如果权限不如此严格,则将忽略该文件。
您是否尝试过使用PGAdmin登录?您可以在那里保存密码,并修改pgpass文件。