我刚刚安装了postgresql,在安装过程中指定了密码x.
createdb:无法连接到数据库postgres:致命:用户的密码身份验证失败
createuser
美元也一样.
我该怎么开始?
我刚刚安装了postgresql,在安装过程中指定了密码x.
createdb:无法连接到数据库postgres:致命:用户的密码身份验证失败
createuser
美元也一样.
我该怎么开始?
其他答案我并不完全满意.以下是postgresql-9.1在Xubuntu 12.04.1 LTS上的工作原理.
使用用户postgres连接到默认数据库:
sudo-u postgres psql模板1
设置用户postgres的密码,然后退出psql(Ctrl-D):
使用加密密码"xxxxxxx"更改用户帖子;
编辑pg_hba.conf
文件:
sudo vim/etc/postgresql/9.1/main/pg_hba.形态
在关于博士后的一行中,将"peer"改为"md5":
local all postgres
peermd5
要知道您运行的是哪个版本的postgresql,请在/etc/postgresql
下查找版本文件夹.此外,可以使用Nano或其他编辑器代替VIM.
重新启动数据库:
sudo/etc/init.d/postgresql重新启动
(在这里你可以判断它是否适用于psql -U postgres
).
创建一个与您同名的用户(要找到它,可以键入whoami
):
sudo createuser-U postgres-d-e-e-l-P-r-s
<my_name>
这些选项告诉postgresql创建一个用户,该用户可以登录、创建数据库、创建新角色、是超级用户,并拥有加密密码.真正重要的是-P-E,这样你会被要求输入将被加密的密码,以及-d,这样你就可以做一个createdb
.
Beware of passwords:它将首先询问您两次新密码(针对新用户),重复,然后询问一次postgres密码(第2步中指定的密码).
同样,编辑pg_hba.conf
文件(参见上面的步骤3),并将"所有"其他用户行中的"对等"更改为"md5":
local all all
peermd5
重新启动(如第4步),并判断您是否可以不使用-U postgres登录:
psql模板1
请注意,如果只执行psql
次,它将失败,因为它将try 将您连接到与您同名的默认数据库(即whoami
).template1是从一开始就在这里的管理数据库.
现在createdb <dbname>
个应该有用了.