You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行Heroku应用区域迁移时遇ErrorPlanNotFound错误求助

Fixing Heroku ErrorPlanNotFound When Forking an App to a New Region

我之前帮朋友处理过一模一样的问题,这个ErrorPlanNotFound错误本质上是Heroku在EU区域找不到你默认使用的数据库计划导致的——当fork命令自动尝试给新应用创建数据库时,系统匹配不到适合目标区域的计划,就会触发这个错误,然后自动销毁应用避免产生不必要的费用。下面给你几个靠谱的解决办法:

1. 显式指定支持EU区域的数据库计划执行fork

默认情况下heroku fork会尝试使用源应用的数据库计划,但有些计划可能在EU区域不可用(比如部分旧的或区域限定的计划)。你可以手动指定一个EU区域支持的计划,比如免费的hobby-dev:

heroku fork --from keepmefit --to keepmefit-eu --region eu --fork-db-plan heroku-postgresql:hobby-dev

如果需要更高配置的计划,可以先执行heroku addons:plans heroku-postgresql查看你的账户能使用的、支持EU区域的计划列表,替换上面的hobby-dev即可。

2. 分步手动创建应用并迁移(更稳妥的方式)

如果fork命令还是报错,你可以拆分步骤手动完成迁移,避免自动销毁的问题:

  • 第一步:在EU区域创建空应用
    heroku create keepmefit-eu --region eu
    
  • 第二步:给新应用添加数据库计划
    heroku addons:create heroku-postgresql:hobby-dev --app keepmefit-eu
    
  • 第三步:复制源应用的数据库数据到新应用
    heroku pg:copy keepmefit::DATABASE keepmefit-eu::DATABASE
    
  • 第四步:同步代码和配置
    先把新应用添加为git远程仓库:
    git remote add keepmefit-eu https://git.heroku.com/keepmefit-eu.git
    
    推送代码到新应用:
    git push keepmefit-eu main
    
    最后复制源应用的环境变量:
    heroku config:copy --from keepmefit --app keepmefit-eu
    

3. 提前确认区域和计划的可用性

执行以下命令确认EU区域是否在你的账户可用,以及数据库计划的区域支持情况:

  • 查看所有可用区域:
    heroku regions
    
  • 查看Heroku PostgreSQL的可用计划:
    heroku addons:plans heroku-postgresql
    

内容的提问来源于stack exchange,提问作者Josemafuen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 04:53:24