RDS MySQL Serverless实例

Serverless是云数据库RDS的一种自动伸缩、按秒计费的资源弹性能力。RDS MySQL Serverless实例不采用固定规格,实例的计算资源会在您指定的范围内根据业务负载自动弹性伸缩,存储资源也根据数据量自动扩容,避免资源闲置浪费,并降低数据库运维成本。RDS MySQL Serverless实例还支持自动启停,实例停止期间仅收取存储费用,不收取计算费用。

您可以加入RDS Serverless钉钉用户群(群号:41925003105)进行咨询、交流和反馈。

实例要求

RDS MySQL Serverless实例需满足以下要求。

  • 地域:华东1(杭州)、华东2(上海)、华北1(青岛)、华北2(北京)、华北3(张家口)、华北5(呼和浩特)、华北6(乌兰察布)、华南1(深圳)、华南2(河源)、华南3(广州)、西南1(成都)、中国(香港)、新加坡、美国(弗吉尼亚)、美国(硅谷)、德国(法兰克福)、英国(伦敦)、泰国(曼谷)、韩国(首尔)、菲律宾(马尼拉)、日本(东京)、马来西亚(吉隆坡)、印度尼亚西(雅加达)

  • 产品系列:基础系列或高可用系列

  • 存储类型:ESSD PL1云盘、通用云盘

功能

RDS MySQL Serverless实例和常规RDS MySQL实例一样支持自动主备切换(限高可用系列)、自动备份等功能,同时额外支持自动弹性伸缩、自动启停的功能,暂不支持部分功能(如只读实例和X-Engine引擎),具体支持的功能请参见功能概览

自动弹性伸缩

计算资源

RDS MySQL Serverless计算资源的单位是RCU(RDS Capacity Unit),1个RCU约等于2GB内存及对应CPU(当前为1核2GB内存),实例计算资源会在您指定的RCU范围内自动伸缩。

当前最小0.5RCU、最大32RCU,扩缩容的粒度为0.5RCU。

当业务波动较大时,普通实例和Serverless实例的计算资源规格变化情况如下。

资源对比

从图中可以看出:

  • 普通实例:波谷期浪费资源较多,高峰期资源不足且业务受损。

  • Serverless实例:

    • 根据业务负载自动扩缩容,减少运维成本和风险。

    • 资源利用率高,降低资源成本。

    • 高峰期也能满足业务需求,提高系统稳定性。

存储资源

  • RDS MySQL Serverless实例最大存储空间为32 TB,最小存储空间与存储类型相关:ESSD PL1云盘为20 GB,通用云盘为40 GB。

  • 您需要为实例指定最小存储空间。当可用存储空间不足时,存储空间自动扩容。

  • 为保障实例稳定,不支持自动缩容,您可以手动缩容。缩容后的最小空间为:min{数据量*1.3, 数据量+400 GB},且不能小于规格的最小存储空间。

自动启停

如果您的数据库在某些时间段内没有业务请求,您可以开启自动启停功能,实例无连接时自动暂停,有请求时自动开启,无需手动操作。自动启停功能默认关闭。

自动启停规则如下:

  • 如果实例在10分钟内无连接,实例自动暂停。

  • 有任何连接请求时,实例自动启动。

    说明

    启动过程约6~40秒,根据不同的实例库表状态会有浮动。在启动过程中,实例不可用。

  • 实例停止期间仅收取存储费用,不收取计算费用。

适用场景

  • 有明显业务波峰波谷的场景

  • 低频使用数据库的场景,例如测试环境

  • 间歇性定时任务的场景,例如学校教学、学生实验

  • 不确定负载的场景,例如物联网(IoT)、边缘计算

  • 期望降低运维成本、提升运维效率的场景

计费

计费组成

RDS MySQL Serverless实例的费用=单节点的费用 x 实例节点个数

Serverless基础系列实例、高可用系列实例的费用如下表所示:

Serverless实例类型

节点数

实例费用

基础系列

1

单节点的费用

高可用系列

2

单节点的费用x2

计费单价

RDS MySQL Serverless实例费用按小时出账。

公式:每小时费用 = 单节点资源使用量 x 单价 x 节点数

单节点资源使用量

  • 计算资源:以RCU(RDS Capacity Unit)为单位,1个RCU约等于1核2 GB内存,每次升降为0.5RCU的整数倍,每小时RCU使用量等于该小时内每秒RCU的平均值。

  • 存储资源:您需要为实例指定最小存储空间。数据量小于最小存储空间时,按最小存储空间计费。可用存储空间不足时,存储空间自动扩容,按扩容后的存储空间计费。

单节点计费单价

收费项

地域

单价

RCU(RDS Capacity Unit)

华东1(杭州)、华东2(上海)、华北1(青岛)、华北2(北京)、华北3(张家口)、华北5(呼和浩特)、华北6(乌兰察布)、华南1(深圳)、华南2(河源)、华南3(广州)、西南1(成都)

0.333 元/小时/RCU

美国(硅谷)、美国(弗吉尼亚)

0.4496 元/小时/RCU

新加坡、菲律宾(马尼拉)、 泰国(曼谷)

0.4995 元/小时/RCU

马来西亚(吉隆坡)、英国(伦敦)

0.5328 元/小时/RCU

印度尼西亚(雅加达)、德国(法兰克福)

0.5495 元/小时/RCU

中国香港、韩国(首尔)

0.5994 元/小时/RCU

日本(东京)

0.666 元/小时/RCU

存储空间费用

华东1(杭州)、华东2(上海)、华北1(青岛)、华北2(北京)、华北3(张家口)、华北5(呼和浩特)、华北6(乌兰察布)、华南1(深圳)、华南2(河源)、华南3(广州)、西南1(成都)

0.0017 元/小时/GB

菲律宾(马尼拉)、泰国(曼谷)

0.0024 元/小时/GB

中国香港、韩国(首尔)、新加坡、马来西亚(吉隆坡)、印度尼西亚(雅加达)、美国(硅谷)、美国(弗吉尼亚)

0.0026 元/小时/GB

德国(法兰克福)、英国(伦敦)

0.0029 元/小时/GB

日本(东京)

0.003 元/小时/GB

计费公式:Serverless总费用=RCU费用+存储空间费用。

节点数

基础系列为单节点,高可用系列为双节点。

计费示例

例如:用户在杭州地域购买了一个Serverless基础系列(单节点)实例,计算资源扩缩范围为0.5 RCU~8 RCU,存储空间为20 GB的,一天内经历了一小时业务高峰,使用了8 RCU,其余小时均使用1 RCU,存储空间使用量为20 GB。

单价:不同地域的单价不同,以华东1(杭州)地域为例,如下表所示。其他地域的费用请参见RDS实例购买页

收费项

地域

标准单价

优惠单价(5折)

RCU

华东1(杭州)

0.333元/RCU/小时

0.1665元/RCU/小时

存储

0.0017元/GB/小时

0.00085元/GB/小时

一天的费用

  • RCU费用:(0.333x8x1)+(0.333x1x23)=10.232元

  • 存储费用:0.0017x20x24=0.816元

总费用为10.232元+0.816元=11.048元。

上述场景中,Serverless基础系列实例完成了8核16 GB的常规实例才能完成的任务,对比基础系列云盘实例8核16 GB规格1.523元/小时的售价,节省成本高达70%以上

优惠折扣:当前RDS MySQL Serverless实例享受5折优惠,新老用户同享。

节省计划:如需采用预付费或者进一步降低成本,可以购买弹性型(特惠版)节省计划

不同实例状态下的收费情况

实例状态

计算费用

存储费用

暂停中

收费

收费

已暂停

不收费

收费

启动中

不收费

收费

运行中

收费

收费

免费试用

如果您符合免费试用的条件,可以免费试用3个月RDS MySQL Serverless实例。

说明

RDS MySQL Serverless实例试用到期后会自动关闭并释放实例。实例释放后无法找回,请提前做好数据备份。您可以前往我的试用页面,查看所有试用产品的到期时间、试用进度等试用信息。更多免费试用的问题,请参见免费试用常见问题

免费体验Serverless弹性能力

您可前往RDS MySQL Serverless弹性&价格力观测进行在线观测,具体请参见操作说明

相关操作

创建或释放实例

新建Serverless实例

前提条件

如果通过RAM用户创建RDS实例,该RAM用户必须拥有AliyunRDSFullAccess权限。如何授权,请参见RAM资源授权

操作步骤

  1. 点此打开RDS实例创建页面

  2. 选择计费方式Serverless

    说明

    可以在页面右下角查看价格。您需要完成后续的配置选择,才能最终确定价格。

  3. 选择要在哪个地域创建RDS实例。

    建议将RDS实例创建在 ECS实例 所在的地域。否则,ECS实例只能通过外网访问RDS实例,无法发挥最佳性能。

    说明
    • 关于支持Serverless实例的地域,请参见实例要求

    • RDS实例购买后,地域不支持更改,如需使ECS实例通过内网连接RDS实例,请确保RDS实例与ECS实例在同一地域。

    • 如何查看您的ECS实例所属地域,请参考准备工作

    • 如果您要通过ECS以外的设备(例如本地服务器或电脑)连接RDS实例,则选择将RDS实例创建在离该设备较近的地域即可,后续通过外网地址连接RDS。

  4. 选择引擎MySQL以及需要的版本。

  5. 选择产品系列基础系列高可用系列

  6. 选择存储类型为ESSD PL1云盘或通用云盘

    ESSD云盘:增强型(Enhanced)SSD云盘,是阿里云全新推出的超高性能云盘产品。ESSD云盘基于新一代分布式块存储架构,结合25GE网络和RDMA技术,为您提供单盘高达100万的随机读写能力和更低的单路时延。

    通用云盘:兼容ESSD云盘的所有特性,性能与ESSD PL1云盘相同,在ESSD云盘的基础上提供了IO突发、IO加速等能力。详情请参见什么是通用云盘

    说明

    存储类型的更多信息,请参见存储类型

  7. 选择资源扩缩范围(RCU)的最小值和上限值,实例会根据实际使用量在这两个值之间自动扩缩容。

  8. 可选:按需调整弹性策略自动启停的配置。

  9. 选择实例所在的 可用区

    • 同一地域不同可用区没有实质性区别。

    • ECS访问同可用区RDS的性能比访问同地域其它可用区RDS更好,但差别较小。

    说明

    若目标可用区右上角提示售罄,请更换可用区。

  10. 如果您创建的是高可用系列实例,需要选择部署方案多可用区部署单可用区部署)和备节点可用区

  11. 滑动滑块,选择存储空间大小。

    说明

    此处选择的存储空间大小为Serverless实例最小存储空间。

  12. 在页面右下角,单击下一步:实例配置

  13. 选择VPC主节点交换机:建议选择与ECS实例相同的VPC。ECS实例与RDS实例位于不同VPC时,无法内网互通。

    说明
    • 根据准备工作,确认您的ECS实例的VPC名称。

    • VPC相同,交换机不同,ECS实例与RDS实例也可以内网互通。

  14. 加入白名单:选择是否将VPC网段加入到实例白名单中。加入后,同一VPC下的ECS实例可以访问RDS实例。

  15. 设置更多自定义参数。如无特殊需求,可保留默认值

    参数

    说明

    参数模板

    选择高性能、异步或默认参数模板,右侧显示模板里的参数。更多信息,请参见使用参数模板

    时区

    设置实例时区。

    表名大小写

    默认不区分大小写。如果本地数据库区分表名大小写,可以修改为区分大小写,便于迁移数据。

    实例释放保护

    选中可以防止实例被误删。更多信息,请参见开启和关闭实例释放保护

    资源组

    选择默认或自定义的资源组,方便实例管理。

    高权限账号

    您可以选择立即设置,输入账号和密码,创建高权限账号。也可以单击稍后设置,后续再创建高权限账号。

    高权限账号的相关信息,请参见创建高权限账号

  16. 在页面右下角,单击下一步:确认订单

  17. 确认订单信息和购买量,选中服务协议,单击去支付,并完成支付。

    控制台提示支付成功开通成功

  18. 查看实例。

    进入实例列表,在上方选择实例所在地域,根据创建时间找到刚刚创建的实例。

    实例创建需要约1~10分钟。请刷新页面查看。

    说明

    如果实例创建失败,可能是由于可用区内资源不足所致,请更换其他可用区后重新尝试。

下一步

创建数据库和账号

已有实例转为Serverless实例

释放Serverless实例

请参见释放实例

弹性伸缩

变更RCU扩缩范围

RDS MySQL Serverless实例以RCU(RDS Capacity Unit)表示性能。Serverless实例会在您给定的最小RCU和上限RCU的范围内,根据实际业务压力自动弹性增加或减少RCU。您可以手动设置RCU的弹性范围。

注意事项

变更RDS MySQL Serverless实例的RCU范围有一定概率触发实例的平滑跨机迁移,可能存在秒级抖动。

操作步骤

  1. 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。

  2. 配置信息区域,单击调整弹性设置

  3. 在弹出的面板中,设置资源扩缩范围(RCU)最小值和上限值。

    说明

    RCU值的可选范围在0.5~32之间,1个RCU约等于1核2 GB内存。

  4. 单击确定

存储空间手动扩容和缩容

当RDS MySQL Serverless实例处于运行中状态时,可以手动扩容或缩容实例的存储空间:

  1. 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。

  2. 在实例基本信息页的使用统计量区域,单击存储空间右侧的修改,在弹出的面板中单击加号或减号,增加或缩小存储空间,单击确定,在弹出的对话框中单击确认

说明

因为缩容需要拷贝数据,故需等待数分钟,比扩容时间稍长。扩容或缩容过程中实例状态为升降配中,完成后实例状态会变为运行中

查看RCU和存储空间的变化

  1. 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。

  2. 在左侧导航栏,单击监控与报警

  3. 查看数据库容量(RCU)MySQL存储空间使用量(MB)磁盘使用率(%)

变更弹性策略(强制执行扩缩容)

RDS MySQL Serverless实例的RCU弹性扩缩容通常会立刻生效且对业务无影响,但在某些特殊情况下,系统可能无法平滑执行RCU弹性扩缩容,您可以设置实例的弹性策略,决定是否强制执行扩缩容。

功能说明

Serverless实例的弹性策略支持如下操作。

操作

说明

强制执行

强制执行RCU弹性扩缩容,保障数据库性能,实例可能发生切换,请确保客户端应用具备重连机制。实例切换的影响请参见实例切换的影响

不强制执行

暂时不执行RCU弹性扩缩容,保持连接和请求,但可能影响稳定性。

操作步骤

  • 如果您尚未创建RDS MySQL Serverless实例,可以在创建过程中选择弹性策略

  • 如果您已创建RDS MySQL Serverless实例但需要调整弹性策略,请参见下述操作步骤。

  1. 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。

  2. 配置信息区域,单击调整弹性设置

  3. 单击高级设置,修改弹性策略,并单击确定

启动或停止实例

开启或关闭自动启停

新建实例

您可以在新建RDS MySQL Serverless实例过程中开启自动启停功能。

已有实例

如果已有RDS MySQL Serverless实例,请参见下述操作步骤开启。

  1. 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。

  2. 配置信息区域,单击调整弹性设置

  3. 单击高级设置,在自动启停的下拉列表中选择开启,并单击页面下方的确定

相关API

您可以调用ModifyDBInstanceSpec接口开启或关闭RDS MySQL Serverless实例的自动启停功能。需要配置的参数如下:

参数

说明

示例值

DBInstanceId

待开启自动启停功能的Serverless实例ID。

rm-****

PayType

Serverless实例的付费类型,固定配置为Serverless。

Serverless

Direction

实例变配类型,固定配置为Serverless。

Serverless

ServerlessConfiguration.AutoPause

自动启停功能开关。

  • true:启用

  • false(默认):不启用

true

手动启动实例(不支持手动暂停)

当RDS MySQL Serverless实例处于暂停状态时,可以采用以下任意一种方式手动启动实例:

  • 实例列表页操作:

    访问RDS实例列表,在上方选择地域,在目标实例操作列,单击更多,在下拉列表中单击启动实例

  • 实例详情页操作:

    访问RDS实例列表,在上方选择地域,然后单击目标实例ID。在实例基本信息页的运行状态区域,单击启动实例

查看实例启停记录

在RDS控制台的任务列表页,可以查看实例的启动和停止记录。

稳定性保障

定时配置RCU

RCU弹性伸缩的耗时通常为秒级,极小概率下可能因为跨机弹性扩容而耗时3~5分钟。如果您对特定时段的稳定性有严格要求,您可以定时配置Serverless实例的RCU,提前增加RCU数量。详情请参见定时配置Serverless实例的RCU

升级为高可用系列

升级为高可用系列

如果Serverless实例为基础系列,可以升级为高可用系列。

费用

升级操作不收费,升级后会按照高可用系列的计费价格来计费。

操作步骤

  1. 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。

  2. 配置信息区域,单击调整弹性设置

  3. 在弹出的面板中的系列右侧选中高可用系列,单击确定

  4. 在弹出的对话框中,核对升级前后信息,完成后单击确认

    说明

    升级过程中,实例的状态为升降配中。升级完成后,实例的状态变为运行中

常见问题

  1. 为什么实例没有自动停止?如何查看实例的当前连接数?

    • 自动启停功能默认关闭,需要手动开启。

    • 如果已开启,您可以查看实例的连接数。

      • 查看连接数:在实例详情页左侧,选择监控与报警,查看会话连接指标。

      • 查看有哪些连接:执行SHOW PROCESSLIST查看。

    • 如果申请了公网地址且白名单全放开,可能会被外部恶意扫描导致不会自动暂停。建议释放公网地址或修改白名单。

  2. RCU升降要多久,触发条件是什么?

    • 耗时:RCU升降通常实时完成,少数情况下需要跨机迁移(2~5分钟)。高可用系列由于有备节点,发生跨机迁移的概率更低。

    • 触发条件:

      • CPU使用率和内存使用率其中一个升高至阈值时扩容。

      • CPU使用率和内存使用率两者都降低至阈值时缩容。

      • 阈值在60%~80%之间,因具体情况而异,且可能会调整以保障可用性。

  3. 如何选择RCU扩缩范围?

    您可以采用其中一种方式:

    • 进行压测,得到最低负载和最高负载时所需的RCU数或CPU核数。

    • 按业务需要的CPU核数评估。1个RCU约等于1核2 GB内存。

  4. RDS MySQL Serverless高可用系列实例是单可用区部署还是多可用区部署?

    高可用系列部署单可用区或多可用区都可以,您可按需部署。