更新记录

1.3.1(2023-06-01)

【优化】阿里云的endpoint默认配置成https://api.next.bspapp.com

1.3.0(2022-11-21)

更新价格为1元,更新支持迁移到阿里云正式版

查看更多

平台兼容性

阿里云 腾讯云
Vue2 Vue3
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序
HBuilderX 3.1.0 app-vue app-nvue
钉钉小程序 快手小程序 飞书小程序 京东小程序
× × × ×
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari

云函数类插件通用教程

使用云函数类插件的前提是:使用HBuilderX 2.9+


数据库一键搬家工具

一键搬家的优势

  • 1、官方的web控制台 需要一个一个表导出导入,操作繁琐。而 一键搬家 不需要。

  • 2、直接用 官方的web控制台 导出的json文件导入腾讯云,会出现24位id和外键搜索查不到的bug。而 一键搬家 自动帮你所有24位id增加1位解决此bug。

  • 3、不仅支持将 A账号 下的 A1空间 搬家到 A2空间,还支持将 A账号 下的 A1空间 搬家到 B账号 下的 B1空间

  • 4、省心、省力、解放双手!

一键搬家最重要的优势

如果你用 官方的web控制台 从阿里云空间导出的json文件导入腾讯云空间,你会发现根据 _id 搜索时,有可能无法搜索到数据,那是因为腾讯云不支持阿里云生成的24位 _id,阿里云生成的24位 _id 导入到腾讯云空间后,会造成无法根据 _id 来查询数据,而 一键搬家 可以帮你完美解决这个棘手问题。

效果视频

<video src="https://vkceyugu.cdn.bspapp.com/VKCEYUGU-cf0c5e69-620c-4f3c-84ab-f4619262939f/257dab2e-eedc-48c4-aef7-d6149ea7b97b.mp4" controls="controls" > 您的浏览器不支持 video 标签。 </video>

名词定义

  • 1、旧空间:就是你需要搬家的空间。

  • 2、新空间:就是你需要把旧空间搬到这的空间。

注意事项

  • 1、请确保 旧空间新空间 是可以正常访问的空间。

  • 2、新空间 数据库的数据在导入前 会被全部清空(需要注意空间别选错了,否则后果自负)。

  • 3、旧空间 数据库的数据 不会被清空(也不会被修改)

  • 4、请一定要在阿里云环境 相对稳定 的时间段进行搬家(如果当前阿里云出 故障 了, 不稳定 ,则请等阿里云环境稳定了再进行搬家)

  • 5、腾讯云的空间会消耗数据库查询、写入次数,以及云函数流量。

  • 6、目前大致耗时 = (你数据量总记录数 / 1000) 秒(即每秒搬1000条数据)(后面会继续优化这个速度)

  • 7、如有问题,可以加Q群:22466457 进行反馈(关于插件问题必定会得到处理)。

插件市场地址

点击前往

操作步骤

  • 1、打开【一键搬家】项目根目录 vk.db.config.js 配置文件,修改 oldEnvnewEnv 配置

  • 2、生成 db_init.json

_如何生成 db_init.json_

uniCloud控制台 导出 db_init.json 选择只导出首条记录,生成不包含ID(包含也没事)【一键搬家】运行时,会自动清空新空间的数据。(也可以直接从你旧项目中复制 db_init.json,但需保证旧项目中的 db_init.json 包含了所有表和表索引)

注意:如果生成失败,那就一直试到成功为止,阿里云免费版很坑,有时候要试十几次才生成成功,坚持就是胜利

  • 3、把生成的 db_init.json 复制到【一键搬家】项目根目录的 uniCloud/database目录下 ,然后在项目根目录执行 node vk.create-db-config.js

  • 4、【一键搬家】项目绑定 旧空间,并上传云函数 vk-db-migration

  • 5、【一键搬家】项目切换到 新空间 ,在 新空间 也上传云函数 vk-db-migration

如何切换空间?

右键 uniCloud 目录,点击关联空间,选择需要切换的空间。

如何切换阿里云和腾讯云空间

右键 uniCloud 目录,点击重命名,腾讯云为: uniCloud-tcb ,阿里云为 uniCloud-aliyun,然后再右键 uniCloud 目录,点击关联空间,选择需要切换的空间。

特别注意:如果你购买的是普通授权版(非源码授权版),你可能需为两个空间各购买1次插件。

  • 6、切换到 新空间 后,在 新空间 初始化你自己数据库的 db_init.json (注意:如果初始化报错,不要急,再初始化一次,直到提示成功或提示没有任何表数据要上传时,则代表成功)

  • 7、启动 一键搬家 项目(请使用连接云端云函数)

注意:运行前先确认下,旧空间和新空间没有填错,否则运行时,新空间数据会清空(旧空间数据不会变)

  • 8、启动【一键搬家】项目,访问首页,当看到页面控制台上打印 点击上方【开始一键搬家】按钮可进行一键搬家 时,点击此按钮即可。

  • 9、点击【开始一键搬家】按钮

  • 10、如不出意外,等待进度条到100%即可。如果出了意外(比如阿里云数据库不稳定导致连续20次数据库连接失败(目前会自动重试20次),则需要刷新页面并重新点击【开始一键搬家】按钮

  • 11、完成后请将 uniCloud/cloudfunctions/vk-db-migration/vk.db.config.jsrunKey 设置为false,再分别上传到 旧空间新空间(这步很关键,防止后面误点导致数据被清空,也可以直接去web控制台删除云函数 vk-db-migration

  • 12、完成。

问题

如你已付费购买,缺还提示[vk-database-one-click-migration]:不能在当前云服务空间使用

如果使用数据库搬家项目的时候遇到 data undefined 同时提示 [vk-database-one-click-migration]:不能在当前云服务空间使用 则去项目根目录下的 package.json 文件内查看看是否有名为 sn 的属性,把Ta删除后再试试。

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件不采集任何数据

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问