【问题标题】:Connecting Django Celery Beat to the correct database将 Django Celery Beat 连接到正确的数据库
【发布时间】:2021-06-23 00:56:15
【问题描述】:

我正在使用 tutorial 开始使用 celery (4.4.7)。我相信我已经正确设置了所有内容,但是每当我运行以下命令时:

celery -A myproj beat -l INFO --scheduler django_celery_beat.schedulers:DatabaseScheduler

我得到错误:

django.db.utils ProgrammingError :relation "django_celery_beat_periodictask" does not exist

我迁移了数据库,所以确实存在 celery beat 表。这个关闭的问题https://github.com/celery/django-celery-results/issues/22 正是我得到的错误,但是,似乎solution 对我不起作用,可能是因为我不知道该怎么做。

【问题讨论】:

    标签: python django postgresql celery


    【解决方案1】:

    我会检查您的 settings.py 文件以检查您为 celery 配置设置的内容。

    如果这不是使用 postgres 创建的,那么您可以使用 postgres 创建数据库、用户、密码并设置权限

    创建用户

    $ sudo -u postgres createuser <username>
    

    创建数据库

    $ sudo -u postgres createdb <dbname>
    

    给用户一个密码

    $ sudo -u postgres psql
    psql=# alter user <username> with encrypted password '<password>';
    

    授予数据库权限

    psql=# grant all privileges on database <dbname> to <username> ;
    

    【讨论】:

      猜你喜欢
      • 2020-08-27
      • 2019-11-15
      • 2015-01-01
      • 1970-01-01
      • 2017-11-26
      • 2018-05-13
      • 1970-01-01
      • 2019-03-15
      • 2022-01-20
      相关资源
      最近更新 更多