Don*_*n P 4 sqlite postgresql heroku
我想将我的 heroku 生产数据库(postgres)复制到我的开发(sqlite)。
将 postgres db 复制到另一个 postgres db 很容易使用heroku pg:pull。有谁知道如何使用此命令将 postgres 复制到 sqlite 中?
pg:pull 上的 Heroku 文档没有说明如何使用不同类型的数据库。这篇旧文章暗示它曾经是可能的。设置本地 postgres db 是我想避免的。
您将需要在pg_restore本地执行,然后使用-a仅转储数据的选项转储数据。
它应该是这样的:
下载数据转储。
heroku addons:add pgbackups
heroku pgbackups:capture
curl -o latest.dump `heroku pgbackups:url`
Run Code Online (Sandbox Code Playgroud)创建临时数据库。
sudo -u postgres createdb tempdb
Run Code Online (Sandbox Code Playgroud)将转储恢复到临时数据库。
sudo -u postgres pg_restore --verbose --clean --no-acl --no-owner -h localhost -d tempdb latest.dump
Run Code Online (Sandbox Code Playgroud)以正确的格式转储数据。
sudo -u postgres pg_dump --inserts -a -b tempdb > data.sql
Run Code Online (Sandbox Code Playgroud)在 sqlite3 中读取转储。
sqlite3
> .read data.sql
Run Code Online (Sandbox Code Playgroud)这是一个近似解。您很可能需要进行一些小的调整。
我同意Craig Ringer 的观点,即让 postgres 在本地运行可能是值得的。希望这个过程能解决问题!
| 归档时间: |
|
| 查看次数: |
1800 次 |
| 最近记录: |