ale*_*nde 13 mysql sqlite postgresql backup heroku
根据标题,我需要导入,但PG备份给了我严格的Postgres SQL,它不适用于MySQL,也使用非指定的编码,我猜是UTF-16.使用db:pull在完成之前需要使用年龄和错误.我很感激任何建议.谢谢.
mu *_*ort 23
在本地设置PostgreSQL,使用PG备份将数据从Heroku复制到本地计算机,然后pg_restore将其导入到新的本地PostgreSQL中.然后你可以在本地将它从PostgreSQL复制到MySQL或SQLite,而不必担心超时.或者,既然之后你有一个功能性的PostgreSQL安装,只需在PostgreSQL之上开始开发,这样你的开发堆栈就可以更好地匹配你的部署堆栈; 在同一个数据库上开发和部署是个好主意.
您可能正在pg_dump -Fc从Heroku 获得二进制转储(即),这可以解释为什么转储看起来像某种UTF-16废话.
您可以使用pgbackups 插件导出数据库转储
$ heroku addons:add pgbackups # To install the addon
$ curl -o latest.dump `heroku pgbackups:url` # To download a dump
Run Code Online (Sandbox Code Playgroud)
mic*_*ael 22
Heroku有关于如何执行此操作的说明:https://devcenter.heroku.com/articles/heroku-postgres-import-export#restore-to-local-database,其归结为:
$ pg_restore --verbose --clean --no-acl --no-owner -h localhost -U myuser -d mydb latest.dump
Run Code Online (Sandbox Code Playgroud)
myuser当前用户在哪里,mydb是当前数据库.
如果你正在使用Postgres.app,那么在本地复制你的生产数据库是非常简单的.-U myuser除非你另外配置了它,否则你可以省略$ psql -h localhost,然后通过运行然后CREATE DATABASE your_database_name;(从Postgres.app文档中创建数据库.然后运行上面的命令,你就可以了.