PostgreSQL密码问题与psql

我试图将PostgreSQL安装到一个CentOS上(我通过SSH连接)。 我需要解压缩一个包(所以不要通过yum或rpm下载): http : //get.enterprisedb.com/postgresql/postgresql-9.3.4-3-linux-x64-binaries.tar.gz并设置。

我解压缩,并运行以下

./postgresql-9.3/bin/initdb -D data/ ./postgresql-9.3/bin/postgres -D data/ 

当我尝试运行./postgresql-9.3/bin/psqlcreateuser我被要求input一个密码,然后input: psql.bin: FATAL: password authentication failed for user "myusername"

问题 :如何让psqlcreateuser工作?

附加信息

我的./data/pg-hba.conf如下:

 local all all trust host all all 127.0.0.1/32 trust host all all ::1/128 trust 

另外,似乎没有在系统中的postgres用户,这是有道理的,因为我只是解压tar.gz

首先,postgres用户和你的操作系统用户是不一样的,除了默认。

除非你在你的计算机上创build一个实际的postgres系统帐户,否则你需要编辑你的pg_hba.conf文件并设置你的validation方法。 默认应该有一个类似的行

 local all postgres peer 

这告诉它让postgres超级用户在本地login,如果运行psql的用户使用同样名为postgres的操作系统帐户。 如果你改变trust那么它将允许任何人使用psql -U postgres本地login。 一旦你可以连接,你就可以创build其他用户的密码。

一旦设置好了,为了安全起见,你应该在postgres用户上设置一个密码,然后把trust改为md5来要求密码连接。

你应该发出psql命令作为amministrative用户,这是默认的postgressudo -u postgres psql postgres

(假设您将postgres目录添加到您的path中,或者sudo -u postgres ./postgresql-9.3/bin/psql postgres

一旦你在psql控制台, \password postgres并input你的新密码