根据知识库信息,uniCloud 官方控制台目前可能没有直接提供"一键备份至另一阿里云空间"的功能(该功能可能已调整或移除)。但你可以通过以下两种方式实现阿里云数据库数据迁移到另一个阿里云空间:
方案一:使用插件市场"数据库一键搬家"工具(推荐)
可以使用插件市场的 【开箱即用】unicloud数据库一键搬家一键迁移工具(支持阿里云、腾讯云、支付宝云、私有云互转)。
主要特点:
- 支持阿里云空间之间的数据库迁移
- 支持分批次迁移(先迁移历史数据,再迁移增量数据)
- 支持数据库中文件 URL 域名自动替换
- 运行前会自动清空新空间数据表(防止数据冲突)
简要操作步骤:
- 在 uniCloud 控制台云数据库菜单下点击"生成初始化数据",选择只导出首条记录
- 将生成的 database 文件复制到搬家项目的
uniCloud/database 目录下
- 在项目根目录执行
node vk.create-db.config.js 生成配置
- 项目绑定旧空间,上传云函数
vk-db-migration 和 vk-db-migration-ext-db
- 切换到新空间,同样上传上述云函数
- 在新空间初始化数据库
- 启动项目,点击"开始一键搬家"按钮即可
特别注意: 搬家完成后,务必将两个云函数配置中的 runKey 设置为 false 并重新上传,或直接在 web 控制台删除这两个云函数,防止误操作导致数据被清空。
方案二:使用"云开发空间一键搬家"插件
另一个选择是 云开发空间一键搬家 插件(ID:gg-unicloud-data-copy)。
主要特点:
- 同时支持云数据库和云存储数据迁移
- 本地运行迁移程序,不额外消耗云函数 CPU
- 自动处理 24 位 ID 兼容性问题(解决阿里云迁移到腾讯云时的 ID 搜索问题)
- 自动更新数据库中云存储的 URL
操作步骤:
- 在 uniCloud 控制台导出
db_init.json(选择只导出首条记录,不包含 ID)
- 将
db_init.json 复制到项目根目录的 uniCloud/database 目录下
- 使用插件功能标记旧空间并授权
- 切换/标记新空间并授权
- 执行搬家任务
注意事项
- 数据安全: 迁移前请务必备份数据,虽然旧空间数据不会被修改,但新空间数据会被清空(默认设置)
- 费用问题: 数据迁移会产生数据库查询/写入次数费用,以及 CDN 流量费用(如涉及云存储)
- 稳定性: 建议在阿里云环境稳定时段操作,避免在业务高峰期迁移
- 跨账号迁移: 如果涉及跨账号迁移,需使用空间所属账号邮箱发送邮件至 service@dcloud.io 申请
如果以上插件不能满足需求,也可以考虑手动导出导入:在 uniCloud Web 控制台逐个表导出 JSON 数据,然后在另一空间导入,但这种方式操作繁琐且可能存在 ID 兼容性问题。
2 个回复
Ask小助手
根据知识库信息,uniCloud 官方控制台目前可能没有直接提供"一键备份至另一阿里云空间"的功能(该功能可能已调整或移除)。但你可以通过以下两种方式实现阿里云数据库数据迁移到另一个阿里云空间:
方案一:使用插件市场"数据库一键搬家"工具(推荐)
可以使用插件市场的 【开箱即用】unicloud数据库一键搬家一键迁移工具(支持阿里云、腾讯云、支付宝云、私有云互转)。
主要特点:
简要操作步骤:
uniCloud/database目录下node vk.create-db.config.js生成配置vk-db-migration和vk-db-migration-ext-db特别注意: 搬家完成后,务必将两个云函数配置中的
runKey设置为false并重新上传,或直接在 web 控制台删除这两个云函数,防止误操作导致数据被清空。方案二:使用"云开发空间一键搬家"插件
另一个选择是 云开发空间一键搬家 插件(ID:gg-unicloud-data-copy)。
主要特点:
操作步骤:
db_init.json(选择只导出首条记录,不包含 ID)db_init.json复制到项目根目录的uniCloud/database目录下注意事项
如果以上插件不能满足需求,也可以考虑手动导出导入:在 uniCloud Web 控制台逐个表导出 JSON 数据,然后在另一空间导入,但这种方式操作繁琐且可能存在 ID 兼容性问题。
rebel_kc (作者)
哦,有了。先导出json文件,再在另一空间导入
要回复问题请先登录或注册
公告
更多>相关问题