【问题标题】:How can I import a local postgres file into my Heroku postgres database?如何将本地 postgres 文件导入 Heroku postgres 数据库?
【发布时间】:2020-11-07 21:52:08
【问题描述】:

我的 django 应用程序正在完美地获取数据并将其插入本地 postgres 数据库。现在我的本地 postgres 数据库中有数据。当我在 heroku 上部署我的应用程序并在 heroku 中运行 migrate 命令时,它会创建表。但桌子是空的。

我只想知道我是否必须将所有数据再次插入 heroku postgres 数据库,或者有什么方法可以将本地 postgres 数据库与数据一起迁移/导出到 heroku postgres 数据库?

【问题讨论】:

  • 你试过this吗?
  • 我阅读了该文档,但他们写道,我们需要使用 HTTP 可访问的 URL 将其上传到某个地方(他们使用的是 aws s3)。但是我们可以不直接做吗?
  • 如果文档没有这样说,我不相信有稳定的方法可以。

标签: django database postgresql heroku database-migration


【解决方案1】:

您可以使用django-admin dumpdatadjango-admin loaddata 命令 在您的本地机器上运行第一个命令并将生成的文件上传到您的服务器并在您的服务器上运行loaddata 命令来恢复您的数据 进一步阅读exampledocs

【讨论】:

  • 当我运行这个命令时:python manage.py dumpdata > db.json 文件被创建,但是当我运行这个命令时:heroku run python manage.py loaddata db.json 我得到这个错误:系统检查发现了一些问题:警告:?:(urls.W005)URL命名空间'admin'不是唯一的。您可能无法反转此命名空间中的所有 URL CommandError: No fixture named 'db' found.
  • 它在你的服务器中找不到你的 db.json 文件检查它的位置和路径是否正确
  • django.core.serializers.base.DeserializationError: Problem installing fixture '/app/data.json'
猜你喜欢
  • 2013-12-28
  • 1970-01-01
  • 1970-01-01
  • 2011-09-26
  • 2020-12-30
  • 2015-09-10
  • 1970-01-01
  • 1970-01-01
  • 2020-03-13
相关资源
最近更新 更多