gpt4 book ai didi

postgresql - Heroku 将数据库从一个应用程序传输到另一个应用程序

转载 作者:行者123 更新时间:2023-11-29 11:07:05 26 4
gpt4 key购买 nike

我需要将数据库从 app_1 转移到 app_2

我在 app_1 上创建了备份

然后运行:

heroku pg:backups 恢复 HEROKU_POSTGRESQL_COLOR --app app_2 heroku pgbackups:url --app app_1

HEROKU_POSTGRESQL_COLOR = app_2 的数据库 URL

然后我得到:

 !    `pg:backups` is not a heroku command.
! Perhaps you meant `pgbackups`.
! See `heroku help` for a list of available commands.

所以我跑了:

heroku pgbackups:restore HEROKU_POSTGRESQL_COLOR --app app_2 heroku pgbackups:url --app app_1

然后我得到以下内容:

!    WARNING: Destructive Action
! This command will affect the app: app_2
! To proceed, type "app_2" or re-run this command with --confirm app_2

所以我确认了:

> app_2
! Please add the pgbackups addon first via:
! heroku addons:add pgbackups

然后我运行:heroku addons:add pgbackups --app app_2

Adding pgbackups on app_2... failed
! Add-on plan not found.

有没有办法解决这个问题?任何帮助将不胜感激!

* 解决方案 *

我最后给 Heroku 发了邮件,他们建议我需要 heroku update; heroku plugins:updateheroku update 仅适用于 heroku toolbelt,我安装了 gem。

解决方案:

安装 Heroku 工具带 here

然后卸载gem:

gem uninstall heroku --all

运行以下命令获取版本,它应该输出 heroku-toolbelt,而不是 gem,更多信息 here

$ heroku --version
heroku-toolbelt/2.39.0 (x86_64-darwin10.8.0) ruby/1.9.3

复制数据库:

heroku pg:backups restore `heroku pgbackups:url --app app_1` HEROKU_POSTGRESQL_COLOR --app app_2

但更好的是,您可以直接从一个数据库复制到另一个数据库而无需备份:

假设 app_2 数据库 url 是:HEROKU_POSTGRESQL_GOLD

heroku pg:copy app_1::DATABASE_URL GOLD -a app_2 

这会将主数据库从 app_1 复制到 app_2 上的 GOLd 数据库

最佳答案

它只有 1 个命令可以将数据库从一个应用程序复制到另一个应用程序,现在您不必备份:

heroku pg:copy app_name_to_copy_from::database_color_to_copy_from database_color_to_copy_to --app app_name_to_copy_to

检查一下 here

关于postgresql - Heroku 将数据库从一个应用程序传输到另一个应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29753366/

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