【问题标题】:Migrate Django App from Heroku to Linux Server将 Django 应用程序从 Heroku 迁移到 Linux 服务器
【发布时间】:2015-02-23 04:21:46
【问题描述】:

我的 Django 应用程序在 Heroku 上运行,但现在我想将它迁移到我自己的 Web 服务器。除了 PostgreSQL 数据库,一切都很顺利:我从 Heroku 导出数据库并将转储文件导入我自己的 PostgreSQL。当我运行python manage.py syncdb 时出现以下错误:

django.db.utils.ProgrammingError: no schema has been selected to create in

当我在浏览器中打开任何页面时,都会出现以下错误:

relation "django_session" does not exist
LINE 1: ...ession_data", "django_session"."expire_date" FROM "django_se...

迁移应用程序(和数据库)的最佳方式是什么?

【问题讨论】:

    标签: django postgresql heroku


    【解决方案1】:

    您的数据库中可能没有公共架构。在你的数据库中运行它来创建它:

    CREATE SCHEMA public;
    

    之后就不需要运行syncdb了,直接运行:

    ./manage.py migrate
    

    【讨论】:

    • 感谢您的回答。我之前尝试过,但架构已经存在: postgres=# create schema public;错误:架构“公共”已经存在
    • 我遵循了一个设置教程,告诉我输入(在使用 \c mydb 进入我的数据库后)REVOKE ALL ON SCHEMA public FROM PUBLIC; - 这导致了你遇到的同样的错误,我刚刚回到并输入了 GRANT ALL ON SCHEMA public to PUBLIC;它奏效了
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-08-06
    • 1970-01-01
    • 1970-01-01
    • 2015-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多