我有一个来自另一个数据库的备份sql文件,我要将其导入到Heroku的postgres数据库中。你是怎么做到的?
答案 0 :(得分:71)
您就是这样做的:
heroku pg:psql --app YOUR_APP_NAME_HERE < updates.sql
如果你想将你的作品恢复到舞台上(假设两者都是heroku postgres DBs):
heroku pgbackups:restore YOUR_STAGING_DATABASE_NAME `heroku pgbackups:url --app YOUR_PRODUCTION_APP_NAME` --app YOUR_STAGING_APP_NAME --confirm YOUR_STAGING_APP_NAME
请务必在“heroku pgbackups:url --app YOUR_PRODUCTION_APP_NAME”周围保留特殊的单引号。
-------- HEROKU TOOLBELT UPDATE --------
Heroku最近更新了他们的工具带,因此旧命令不再有效(有关详细信息,请参阅this link)。以下是恢复命令的新版本。
heroku pg:backups restore `heroku pg:backups public-url -a YOUR_PRODUCTION_APP_NAME` YOUR_STAGING_DATABASE_NAME --app YOUR_STAGING_APP_NAME --confirm YOUR_STAGING_APP_NAME
答案 1 :(得分:17)
制作备份文件:
pg_dump -U USERNAME DATABASE --no-owner --no-acl -f backup.sql
从sql文件恢复到heroku:
heroku pg:psql --app APPNAME < backup.sql
(Bonus)从heroku app数据库中删除所有表(示例):
heroku pg:reset --app APPNAME HEROKU_POSTGRESQL_ROSE
从posgresql heroku面板(psql行)获取DATABASE_URL
答案 2 :(得分:2)
将SQL加载到本地Postgres实例中并确保它是正确的。然后使用此处的说明转储数据:https://devcenter.heroku.com/articles/heroku-postgres-import-export
最后,将转储上传到公共Web服务器(如S3)并恢复到Heroku,如下所示:
heroku pgbackups:restore DATABASE 'https://s3.amazonaws.com/me/items/3H0q/mydb.dump'
答案 3 :(得分:0)
<asp:Button runat="server" ID="btn" Text="+" CssClass="btn btn-primary active" OnClick="btn_Click" />
pg_dump -U postgres -d hawkishfinance > C:\Users\Fauzan\Projects\hawkishfinance.sql