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

Fly.io区域迁移后数据库应用暂停,如何无数据损失重启?

在Fly.io将应用从MAA迁移到BOM后重启数据库应用并保留数据的解决方案

核心问题分析

迁移后数据库应用暂停,MAA区域关联的存储卷(Volume)数据完好,但无可用运行机器,日志中的Invalid date是机器启动时时间同步异常导致的临时问题,不影响数据安全。以下是具体恢复步骤:


1. 确认原MAA存储卷状态

先执行命令查看所有绑定到应用的存储卷,确认MAA区域的卷处于正常状态:

fly volumes list --app <你的应用名称>

找到MAA区域的卷记录,记下它的Volume ID(格式类似vol_xxxxxx)。

2. 将MAA存储卷迁移至BOM区域

使用Fly.io的存储卷迁移命令,将原MAA区域的卷完整迁移到BOM区域,此操作会保留所有数据:

fly volumes move <你的MAA Volume ID> --region bom --app <你的应用名称>

等待命令执行完成,过程中Fly.io会自动处理数据复制和区域转移。

3. 在BOM区域启动新应用机器

存储卷迁移完成后,在BOM区域创建并启动新的应用机器,确保挂载迁移后的存储卷(注意挂载路径要与原配置一致,从日志可知原路径为/data):

fly machine create --region bom --volume <迁移后的Volume ID>:/data --app <你的应用名称>

4. 验证恢复结果

  • 查看机器运行状态:
    fly machines list --app <你的应用名称>
    
  • 查看应用启动日志,确认数据库、Proxy等进程正常运行:
    fly logs --app <你的应用名称>
    
  • 直接连接数据库验证数据完整性(以PostgreSQL为例):
    fly pg connect --app <你的应用名称>
    

备选方案(若迁移命令失败)

如果存储卷迁移命令执行失败,可通过备份恢复的方式转移数据:

  1. 在BOM区域创建新的存储卷:
    fly volumes create data --region bom --size <原卷容量> --app <你的应用名称>
    
  2. 从原MAA卷备份数据到新BOM卷:
    fly volumes backup restore <新BOM Volume ID> --from-volume <原MAA Volume ID> --app <你的应用名称>
    
  3. 再按照步骤3启动新机器并挂载新卷即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 00:22:46