我已经配置了所有内容,就像我在另一个发行版中一样(我是一个拱形用户,我在台式机上安装了opensuse)。
作为:
然后,当启动syncdb开始工作时,我得到这条消息(我在这个帖子中为用户更改了用户等..问题,密码:密码,数据库:问题,因为它实际上是用其他词语):< / p>
FATAL: Ident authentication failed for user "question"
潜伏之后,我有了改变我的pg_hba.conf文件的想法(位于:/var/lib/pgsql/data/pg_hba.conf)
这就是我所拥有的:
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all trust
# IPv4 local connections:
host all all 127.0.0.1/32 ident
# IPv6 local connections:
host all all ::1/128 ident
我的django conf文件包含:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'question',
'USER': 'question',
'PASSWORD': 'password',
'HOST': '127.0.0.1',
'PORT': '',
}
}
我不明白我错过了什么,有什么想法吗?
答案 0 :(得分:1)
修改/var/lib/pgsql/data/pg_hba.conf
文件,将方法从trust
更改为md5
。这样Postgres会要求输入密码。
还记得重新加载配置文件。
答案 1 :(得分:0)
您是否尝试过更改:
host all all 127.0.0.1/32 ident
为:
host all all 127.0.0.1/32 md5
您似乎是通过TCP连接(因此pg_hba.confg中第一行的“trust”不适用)并通过ident进行身份验证,这需要pg_ident.conf中的条目。您可能需要“md5”或其他基于密码的身份验证选项之一。