gpt4 book ai didi

postgresql - Heroku 数据库还原问题

转载 作者:行者123 更新时间:2023-11-29 14:37:15 25 4
gpt4 key购买 nike

stackoverflow 和不同的论坛上浏览了不同的解决方案。但没有一个能解决确切的问题。

As per the documentation: https://devcenter.heroku.com/articles/heroku-postgres-import-export

我使用以下命令从本地数据库创建了 dump 文件:

pg_dump -Fc --no-acl --no-owner -h localhost -U postgres dss_iaya>dss_iaya_db_dump1.dump

然后根据文档,上传到具有公共(public)访问 URL 的服务器:https://firebasestorage.googleapis.com/v0/b/iaya-664f3.appspot.com/o/dss_iaya_db_dump1.dump?alt=media&token=06167d04-1e98-4e4b-b0e0-9d83a86dd167

现在,当我尝试根据其文档语法 heroku pg:backups:restore [BACKUP] [DATABASE] --app APP 使用以下命令在 Heroku 上恢复时,恢复时返回错误信息。

heroku pg:backups:restore  --app heroku-postgres-*** 'https://firebasestorage.***/dss_iaya_db_dump1.dump?alt=media&token=***' 'postgres://quesu***:I***@ec2-54-***.eu-west-1.compute.amazonaws.com:5432/d3n***k0' 

I have used *** for security purpose only, as can not mention full credentials. But I believe one can understand the whole syntax.

当我在新创建的本地数据库上恢复相同的 .dump 文件时,它可以正常工作并创建/恢复包含表和数据的整个数据库。

Command console screen

Info log

最佳答案

刚刚找到了解决方案,实际上在我的案例中有两件事是错误的。

一,上传的 .dump 文件不能被 heroku 很好地读取/使用。

第二,不需要提供heroku postgresql DB完整的URL。

So, the right way that worked for me was that the uploaded file should be accessible without any token and also without any virtual/indirect path, etc. The URL to the file should point to the file directly. In my questioned problem, I was using firebase to host my DB file temporarily to do the heroku operation. And firebase was not giving direct URL to the uploaded physical file.

heroku pg:backups:restore  --app heroku-postgres-f3*** 'https://www.h***.com/dss_iaya_db_dump2.dump' DATABASE_URL

输入此命令后,我被要求重新输入 heroku 应用程序名称以确认操作。完成后,一切都非常顺利。

关于postgresql - Heroku 数据库还原问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42433414/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com