Django连接到Postgres密码身份验证失败

时间:2018-10-11 20:58:42

标签: django postgresql passwords

我正在开发一个django应用程序,该应用程序已在我的开发服务器上运行(一个运行Raspbian的Raspberry Pi,带有PostgreSQL 9.6),现在我开始尝试在其生产环境中运行它(一个正在运行的AWS实例) ubuntu与postgresql 10)。

使用django的标准用户注册页面(我又添加了一个字段)的略微修改版本设置我的网站的第一个用户时,出现错误:

FATAL:  password authentication failed for user "makersuser"

我再次在postgres提示符下设置了密码,以确保暂时将对decouple中的.env的调用替换为带有硬编码密码的md5字符串文字),因此我可以确定该密码与我在postgres命令行上设置的密码相同,并且将该用户的密码有效期限设置为无穷大(如Postgres password authentication fails),并且如Getting error: Peer authentication failed for user "postgres", when trying to get pgsql working with rails

中所述,将身份验证设置为# Database administrative login by Unix domain socket local all postgres peer # TYPE DATABASE USER ADDRESS METHOD # "local" is for Unix domain socket connections only local all all md5 # IPv4 local connections: host all all 127.0.0.1/32 md5 # IPv6 local connections: host all all ::1/128 md5 # Allow replication connections from localhost, by a user with the # replication privilege. local replication all md5 host replication all 127.0.0.1/32 md5 host replication all ::1/128 md5

我的pg_hba.conf现在看起来像这样:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'makers',
        'USER': 'makersuser',
        'PASSWORD': decouple.config('POSTGRES_PASSWORD'),
        'HOST': 'localhost',
        'PORT': '',
    }
}

和我的settings.py的数据库部分现在看起来像这样(除了具有硬编码的密码之外):

int a[1];

接下来我应该尝试什么?我的数据库设置是脚本化的,我相信在两个系统上都是相同的,并且在Raspberry Pi上运行良好。

0 个答案:

没有答案