aliyun-migrate-business.md 8.2 KB
Newer Older
WangMoYang's avatar
WangMoYang 已提交
1 2 3 4
# 阿里云公测版迁移到正式版

为了开发者更方便的将业务从公测版迁移到正式版,我们提供了公测版一键迁移到正式版的功能,开发者可在[uniCloud控制台](https://unicloud.dcloud.net.cn)操作迁移,流程如下:

WangMoYang's avatar
WangMoYang 已提交
5
## 购买正式版迁移空间
WangMoYang's avatar
WangMoYang 已提交
6 7 8 9 10 11
公测版迁移正式版,需通过`迁移正式版`操作来下单购买待迁移的正式版空间,该操作会为两个空间增加迁移绑定关系,方便后续迁移配置。

![](https://f184e7c3-1912-41b2-b81f-435d1b37c7b4.cdn.bspapp.com/VKCEYUGU-f184e7c3-1912-41b2-b81f-435d1b37c7b4/a0eea46e-f89f-40de-ac99-6f0eb09a55f3.png)

我们会**根据公测版服务空间资源用量来推荐迁移正式版的套餐,只可购买推荐套餐及以上的版本以保证全量数据迁移**,您也可以直接选择按量计费。

WangMoYang's avatar
WangMoYang 已提交
12
在购买待迁移空间前,已经可以获取到迁移后云存储上传及下载的域名,**开发小程序的话,由于小程序安全域名白名单在客户端有缓存,建议迁移前两天将云存储域名添加到白名单**
WangMoYang's avatar
WangMoYang 已提交
13

WangMoYang's avatar
WangMoYang 已提交
14
下单时可设置迁移任务执行的时间,迁移时间仅支持两小时后到三天内的时间点,在未开始执行之前可更改迁移时间。
WangMoYang's avatar
WangMoYang 已提交
15 16 17

由于待迁移正式版空间是一个全新且独立的空间,所以在创建后会分配新的SpaceId,规则为`mp-公测版SpaceId`

雪洛's avatar
雪洛 已提交
18
为了更好的在云函数/云对象中兼容,购买待迁移正式版空间时, 可选择`是否在云函数/云对象代码中兼容 SpaceID`,如果开启该选项,迁移后在云函数/云对象内获取的`context.SPACEINFO.spaceId``cloudInfo` 内的 SpaceId 将保持不变,仍为原公测版SpaceId。开发者可以通过`context.SPACEINFO.useOldSpaceId``cloudInfo.useOldSpaceId`判断当前获取的spaceId是不是迁移前的,true表示当前服务空间在云函数内取到的服务空间id为迁移前的服务空间id,否则为新空间id。如运行本地云函数,此特性于`HBuilderX 3.6.13`起支持,云端默认支持此特性。**迁移后的新服务空间id为旧空间id加`mp-`前缀。**
WangMoYang's avatar
WangMoYang 已提交
19

WangMoYang's avatar
WangMoYang 已提交
20
![](https://f184e7c3-1912-41b2-b81f-435d1b37c7b4.cdn.bspapp.com/VKCEYUGU-f184e7c3-1912-41b2-b81f-435d1b37c7b4/1febab5f-e51e-462e-8833-aad26127efc5.png)
WangMoYang's avatar
WangMoYang 已提交
21 22 23 24 25 26


**注意**
- 公测版不可迁移到正式版的免费版(开发者版)
- 购买待迁移正式版空间后,为了保证数据迁移的一致性,此时的正式版空间无法在HBuilderX关联、无法在控制台创建数据表、无法在云存储及前端网页托管上传文件等操作,直至迁移完成。
- 只有通过`迁移正式版`完成创建的正式版服务空间才支持一键迁移,原已创建的正式版空间无法使用该功能。
WangMoYang's avatar
WangMoYang 已提交
27
- 如果客户端为小程序,请在迁移前先到小程序后台配置新的上传域名到上传域名白名单(注意不要移除公测版服务空间的上传下载域名),**由于小程序安全域名在微信客户端内有缓存,建议再迁移前两天进行配置**
WangMoYang's avatar
WangMoYang 已提交
28
- 建议在半夜等用户不访问的时间进行迁移。迁移过程耗时数分钟(具体取决于云存储的文件量),迁移中大多数功能仍可以使用,但云存储的上传功能在迁移中会关闭。
雪洛's avatar
雪洛 已提交
29 30 31 32 33
- 正式版固定IP代理出口IP和公测版不同,如有在三方平台配置域名白名单请自行修改,参考:[阿里云固定IP](cf-functions.md#aliyun-eip)
- 迁移到正式版后公测版服务空间的数据库备份不会被迁移过来
- 迁移到正式版后开发者下次在HBuilderX打包发行时会使用正式版服务空间ID。请注意这时候需要修改小程序request域名白名单,将`api.next.bspapp.com`添加到request域名白名单内
- 迁移到正式版后公测版服务空间前端网页托管默认域名将在公测结束后自动回收  
- 迁移到正式版后不可删除公测版服务空间,需等待公测结束后自动回收
WangMoYang's avatar
WangMoYang 已提交
34

WangMoYang's avatar
WangMoYang 已提交
35
## 迁移开始
WangMoYang's avatar
WangMoYang 已提交
36 37
系统会在设置的迁移时间自动开始执行迁移任务,迁移逻辑及注意事项如下:

WangMoYang's avatar
WangMoYang 已提交
38
### 云数据库
WangMoYang's avatar
WangMoYang 已提交
39 40 41

- 云数据库无需迁移,会将公测版服务空间的数据库关联到正式版上,所以**请勿删除公测版数据**

WangMoYang's avatar
WangMoYang 已提交
42
迁移期间是否可正常服务:<font color=#42b983></font>
WangMoYang's avatar
WangMoYang 已提交
43

WangMoYang's avatar
WangMoYang 已提交
44
迁移类型:<font color=#42b983>无感迁移</font>
WangMoYang's avatar
WangMoYang 已提交
45

WangMoYang's avatar
WangMoYang 已提交
46 47
迁移耗时:无

WangMoYang's avatar
WangMoYang 已提交
48
### 云函数
WangMoYang's avatar
WangMoYang 已提交
49 50 51 52

- 云函数定时任务、url化配置及自定义域名会一并迁移,公测版服务空间的url化请求会自动转发到正式版服务空间上
- 如果绑定了自定义域名,此时仍会请求到公测版空间然后转发到正式版空间,您也可以将域名解析到正式版服务空间,免去请求转发的逻辑

WangMoYang's avatar
WangMoYang 已提交
53
迁移期间是否可正常服务:<font color=#42b983></font>
WangMoYang's avatar
WangMoYang 已提交
54

WangMoYang's avatar
WangMoYang 已提交
55
迁移类型:<font color=#42b983>无感迁移</font>
WangMoYang's avatar
WangMoYang 已提交
56

WangMoYang's avatar
WangMoYang 已提交
57 58
迁移耗时:约3-5分钟

WangMoYang's avatar
WangMoYang 已提交
59
### 跨域配置
WangMoYang's avatar
WangMoYang 已提交
60 61 62

- 由于正式版跨域配置上限为9条,跨域配置记录迁移后可能会超上限,此时无法新增。正式版跨域配置支持泛域名,可将公测版配置的多个子域名删除后添加一条泛域名

WangMoYang's avatar
WangMoYang 已提交
63
迁移期间是否可正常服务:<font color=#42b983></font>
WangMoYang's avatar
WangMoYang 已提交
64

WangMoYang's avatar
WangMoYang 已提交
65
迁移类型:<font color=#42b983>无感迁移</font>
WangMoYang's avatar
WangMoYang 已提交
66

WangMoYang's avatar
WangMoYang 已提交
67 68
迁移耗时:很短,可忽略不计

WangMoYang's avatar
WangMoYang 已提交
69
### 云存储
WangMoYang's avatar
WangMoYang 已提交
70 71 72 73

- 云存储在迁移开始后,上传文件的功能不可用,访问不受影响
- 原云存储链接仍可正常访问,流量费用会计到正式版空间,正式版空间如果是包年包月则从资源用量中扣除,如果是按量计费则会出账并从余额中扣除,出账时间为T+2

WangMoYang's avatar
WangMoYang 已提交
74
迁移期间是否可正常服务:<font color=#f3a73f>可正常访问,不可上传</font>
WangMoYang's avatar
WangMoYang 已提交
75

WangMoYang's avatar
WangMoYang 已提交
76
迁移类型:<font color=#f3a73f>有感迁移,迁移期间不可上传文件</font>
WangMoYang's avatar
WangMoYang 已提交
77

WangMoYang's avatar
WangMoYang 已提交
78 79
迁移耗时:1GB迁移耗时约1分钟

WangMoYang's avatar
WangMoYang 已提交
80
### 前端网页托管
WangMoYang's avatar
WangMoYang 已提交
81 82 83

- 前端网页托管文件及自定义域名会一并迁移,迁移期间访问不受影响
- 单页应用配置取消,改为由错误页面实现,迁移时会自动将开发者配置的单页应用目录转为错误页面配置项,开发者无需操作
WangMoYang's avatar
WangMoYang 已提交
84
- 默认域名及自定义域名此时仍会请求到公测版空间,与云存储不同的是不会转发到正式版空间
WangMoYang's avatar
WangMoYang 已提交
85
- 正式版空间如果为按量计费,在迁移任务执行时会自动开通前端网页托管
WangMoYang's avatar
WangMoYang 已提交
86

WangMoYang's avatar
WangMoYang 已提交
87
迁移期间是否可正常服务:<font color=#42b983></font>
WangMoYang's avatar
WangMoYang 已提交
88

WangMoYang's avatar
WangMoYang 已提交
89
迁移类型:<font color=#f3a73f>有感迁移,迁移完成后自定义域名需重新绑定及解析CNAME到正式版</font>
WangMoYang's avatar
WangMoYang 已提交
90

WangMoYang's avatar
WangMoYang 已提交
91 92 93
迁移耗时:1GB迁移耗时约1分钟


WangMoYang's avatar
WangMoYang 已提交
94
## 迁移完成
WangMoYang's avatar
WangMoYang 已提交
95 96 97

在迁移任务执行完成后,业务中公测版服务空间相关的数据会一并迁移至正式版:

WangMoYang's avatar
WangMoYang 已提交
98
1. 插件市场购买的付费插件
WangMoYang's avatar
WangMoYang 已提交
99 100 101 102 103 104
2. 公测版服务空间购买的Redis
3. 公测版服务空间添加的协作者
4. 公测版服务空间添加的安全网络及IP防刷配置

此时公测版服务空间将无法在[uniCloud控制台](https://unicloud.dcloud.net.cn)操作,无法在HBuilderX关联, 正式版服务空间已完全替代公测版,可在HBuilderX关联进行打包。

WangMoYang's avatar
WangMoYang 已提交
105
### 迁移完成后的TODO
WangMoYang's avatar
WangMoYang 已提交
106 107 108

- 检查云函数运行是否正常,比如定时任务及url化是否正常、云函数/云对象中获取到的SpaceId是否符合预期
- 检查云存储上传是否正常,公测版服务空间的上传请求会转发到正式版,所以上传的文件会在正式版里体现
WangMoYang's avatar
WangMoYang 已提交
109
- 检查前端网页托管是否正常,比如自定义域名的访问。如果有使用默认域名请尽快替换为正式版域名
WangMoYang's avatar
WangMoYang 已提交
110

WangMoYang's avatar
WangMoYang 已提交
111
### 前端网页托管绑定了自定义域名
WangMoYang's avatar
WangMoYang 已提交
112

WangMoYang's avatar
WangMoYang 已提交
113 114 115 116 117 118 119
如果绑定了自定义域名,则仍会请求到公测版服务空间,此时正式版上传的文件并不会反向同步到公测版,导致自定义域名无法访问新上传的文件。

由于自定义域名仍绑定在公测版服务空间,正式版空间前端网页托管的域名状态为`需解绑后重新绑定`

![](https://f184e7c3-1912-41b2-b81f-435d1b37c7b4.cdn.bspapp.com/VKCEYUGU-f184e7c3-1912-41b2-b81f-435d1b37c7b4/5fa6249a-2900-40aa-b4b8-16f37d2307a1.png)

需要开发者在[uniCloud控制台](https://unicloud.dcloud.net.cn)将自定义域名删除后重新绑定,通过该操作获取到新的CNAME后,将域名解析更换到新的CNAME以完成域名迁移。 这个期间前端网页托管自定义域名访问会中断,建议在访问量较低的时候处理。