在芹菜任务中,PostgreSQL的对等身份验证失败



当我设置的芹菜任务执行时,当它试图从数据库中获取对象时,会引发以下异常:

File "/usr/local/lib/python2.7/dist-packages/psycopg2/__init__.py", line 164, in connect
    conn = _connect(dsn, connection_factory=connection_factory, async=async)
OperationalError: FATAL:  Peer authentication failed for user "chris"

只有当任务由Celery运行时才会发生这种情况。请问我该怎么修?

我的"主机"设置是settings.py.中的空字符串"

堆栈

Python 2.7.10,Django 1.8.5

您的pg_hba.conf似乎被设置为对本地套接字连接使用对等身份验证,这意味着如果您以Linux用户"chris"的身份登录,则只能以Postgres用户"chrs"的身份连接。您的应用程序可能使用IP连接而不是套接字连接,并且将受到不同的身份验证规则的约束。

您可以通过以下任一方式解决此问题:

  • 以用户"chris"的身份运行Celery
  • 更改pg_hba.conf以对此特定用户和连接类型使用某种形式的密码身份验证
  • 通过将"host"设置为"127.0.0.1",将Celery配置为使用IP连接

相关内容

  • 没有找到相关文章

最新更新