4

我在 Heroku 上有一个数据库,我正在尝试将其复制到我的本地计算机。

我通过执行以下操作创建了数据库的备份:

heroku pgbackups:capture

这将创建我通过创建指向它的 URL 链接下载的数据库的转储文件:

heroku pgbackups:url b004

但现在我有一个转储文件,并不知道如何处理它。我试过了

pg_restore

恢复数据库,但我不知道该信息去了哪里。我基本上想从这个转储文件中创建一个 .db 文件。那可能吗?

最终我的最终目标是访问这个数据库——所以如果复制数据库的另一种方法更好,我可以接受。

4

2 回答 2

3

Heroku 不允许您使用 sqlite 文件,因为它们具有只读文件系统。但是您可以使用 Django 通过dumpdata命令将 Heroku 中的数据转储到 JSON 文件中,然后他们将其导入本地开发环境。

因为使用 运行在 Web 服务器上生成文件的命令可能很困难heroku run,所以我建议您安装django smuggler,这使得该操作成为管理员中的点击事件。

在此处输入图像描述

于 2012-06-08T19:22:15.990 回答
3

首先你应该在你的本地机器上安装 postgres。

给 Django 初学者的 PostgreSQL 备忘单

然后,使用 pg_restore 命令导入您的转储文件:

pg_restore -d yournewdb -U yournewuser --role=yournewuser /tmp/b001.dump

就是这样,您的数据现在已从您的 heroku 应用程序中克隆。

于 2012-06-14T20:32:28.740 回答