RDS MySQL Serverless资源与负载自适应

本文涉及的产品
云服务器 ECS,每月免费额度200元 3个月
云服务器ECS,u1 2核4GB 1个月
简介: 本场景主要介绍如何创建RDS Serverless版实例、配置RDS Serverless版实例和体验RDS Serverless动态计费。

RDS MySQL Serverless资源与负载自适应

1. 选择实验资源

本实验支持实验资源体验、开通免费试用、个人账户资源三种实验资源方式。

在实验开始前,请您选择其中一种实验资源,单击确认开启实验

  • 如果您选择的是实验资源体验,资源创建过程需要3~5分钟(视资源不同开通时间有所差异,ACK等资源开通时间较长)。完成实验资源的创建后,在实验室页面左侧导航栏中,单击云产品资源列表,可查看本次实验资源相关信息(例如子用户名称、子用户密码、AK ID、AK Secret、资源中的项目名称等)。

说明:实验环境一旦开始创建则进入计时阶段,建议学员先基本了解实验具体的步骤、目的,真正开始做实验时再进行创建。

  • 如果您选择的是开通免费试用,下方卡片会展示本实验支持的试用规格,可以选择你要试用的云产品资源进行开通。您在实验过程中,可以随时用右下角icon唤起试用卡片。

说明:试用云产品开通在您的个人账号下,并占用您的试用权益如试用超出免费试用额度,可能会产生一定费用。

阿里云支持试用的产品列表、权益及具体规则说明请参考开发者试用中心

2. 创建实验资源

本步骤指导您如何创建云服务器ECS和RDS MySQL Serverless。

如果您已创建云服务器ECS和RDS MySQL Serverless版实例,请您选择个人账户资源,并跳过本小节,直接进行实验操作即可。

本步骤仅作为参考使用,您可以根据需求自行选择配置。

如果您选择的是开通免费试用,参考以下步骤创建云服务器ECS和RDS MySQL Serverless。

  1. 在本实验页面下方卡片会展示本实验支持的试用规格,依次选择一个试用规格,单击立即试用

  1. 在云服务器ECS试用开通页面,根据页面引导进行开通云服务器ECS,其中操作系统选择Alibaba Cloud Linux 2.1903 64位地域需要与云数据库RDS MySQL Serverless在同一地域下,其他配置根据您的需求自行选择即可。
  2. 在云数据库RDS MySQL Serverless试用开通页面,根据页面引导进行开通云数据库RDS MySQL Serverless,其中数据库类型选择MySQL数据库版本号选择8.0地域需要与云服务器ECS在同一地域下,其他配置根据您的需求自行选择即可。

如果您选择的是选择个人账户资源,参考以下步骤创建云服务器ECS和RDS MySQL Serverless。

  1. 创建云服务器ECS。

1.1 前往云服务器ECS控制台,在概览页面的我的资源区域,单击创建实例

1.2 在云服务器ECS购买页面,根据页面引导进行开通云服务器ECS,其中操作系统选择Alibaba Cloud Linux 2.1903 LTS 64位,开启分配公网IPv4地址地域需要与云数据库RDS MySQL Serverless在同一地域下,其他配置根据您的需求自行选择即可。

  1. 创建云数据库RDS MySQL Serverless。

2.1 前往云数据库RDS创建页面

2.2 在云数据库RDS创建页面,根据页面引导进行开通云数据库RDS MySQL Serverless,其中计费方式选择Serverless数据库类型选择MySQL数据库版本号选择8.0资源扩缩范围(RCU)选择0.5~2RCU地域需要与云服务器ECS在同一地域下,其他配置根据您的需求自行选择即可。

3. 配置RDS Serverless版实例

本步骤将指导您在RDS MySQL Serverless版实例上创建用于压测的数据库和账号,并配置白名单实现ECS访问,获取数据库访问地址等。

  1. 登录云数据库RDS控制台。

1.1 双击打开远程桌面的Chromium网页浏览器

1.2 在RAM用户登录框中单击下一步,并复制粘贴页面左上角的子用户密码用户密码输入框,单击登录

1.3 复制下方地址,在Chromium网页浏览器打开新页签,粘贴并访问云数据库RDS控制台。

https://rdsnext.console.aliyun.com/

1.4 在左侧导航栏中,单击实例列表

1.5 在顶部菜单栏,选择资源所在地域。例如下图中,地域切换为华东1(杭州)。

返回如下页面,您可看到云起实验室为您提供的RDS MySQL Serverless版实例资源。

  1. 创建用于压测的数据库。

2.1 在实例列表页面,单击实例ID,进入实例基本信息页面,在左侧导航栏单击数据库管理可以创建数据库

2.2 本实验已经预先创建好需要的测试数据库,您可以通过云产品资源列表信息以及控制台查看到数据库名称,无需手动创建测试数据库。数据库手工创建步骤如下。

  • 数据库(DB)名称:输入数据库名称,例如serverless
  • 支持字符集:默认设为utf8
  • 备注说明:非必填。用于备注该数据库的相关信息,便于后续数据库管理,最多支持256个字符。

  1. 创建账号及授权。

3.1 在左侧导航栏单击账号管理,可以创建数据库帐号,并完成授权。

3.2 本实验已经预先创建好需要的测试数据库账号,您可以通过云产品资源列表信息以及控制台查看到数据库账号、密码,无需手动创建测试数据库账号。数据库账号手工创建步骤如下。

  • 数据库账号:输入数据库账号名称,例如test_user
  • 账号类型:选择普通账号
  • 授权数据库:将上一步中创建的数据库添加至已授权数据库列表中,并设置权限为读写(DDL+DML)
  • 密码:输入账号密码,例如Password123
  • 确认密码:再次输入账号密码。

  1. 白名单授权。

为确保数据安全,云数据库RDS默认采用白名单策略,仅支持白名单内的客户端访问。您可以通过实验室云产品资源查看已经预创建用于访问测试的ECS实例内网IP地址信息,并将服务器IP添加至RDS白名单分组内,手动操作如下截图。

说明:本实验已经自动将测试ECS服务器的内网IP添加至RDS Serverless实例白名单,您无需手动操作。

  1. 获取数据库访问地址。

本实验使用ECS服务器通过RDS Serverless内网地址访问数据库,可以通过RDS实例的数据库连接页面,查看数据库的内网地址。

说明:本实验RDS实例内网连接地址信息,已经通过云产品资源列表提供,您可以直接快速复制。

4. 配置RDS Serverless版实例

本步骤将指导您在RDS MySQL Serverless版实例上创建用于压测的数据库和账号,并配置白名单实现ECS访问,获取数据库访问地址等。

  1. 前往云数据库RDS控制台
  2. 左侧导航栏中,单击实例列表

返回如下页面,您可看到刚刚创建的RDS MySQL Serverless版实例资源。

  1. 创建用于压测的数据库。

3.1 在实例列表页面,单击实例ID,进入实例基本信息页面,在左侧导航栏单击数据库管理可以创建数据库

3.2 在创建数据库对话框中,根据如下说明配置数据库,单击创建

参数说明:

  • 数据库(DB)名称:输入数据库名称,例如serverless
  • 支持字符集:默认设为utf8
  • 备注说明:非必填。用于备注该数据库的相关信息,便于后续数据库管理,最多支持256个字符。

  1. 创建账号及授权。

4.1 在左侧导航栏单击账号管理,可以创建数据库帐号,并完成授权。

4.2 在创建账号对话框中,根据如下说明配置账号,单击确定

  • 数据库账号:输入数据库账号名称,例如test_user
  • 账号类型:选择普通账号
  • 授权数据库:将上一步中创建的数据库添加至已授权数据库列表中,并设置权限为读写(DDL+DML)
  • 密码:输入账号密码,例如Password123
  • 确认密码:再次输入账号密码。

  1. 白名单授权。

为确保数据安全,云数据库RDS默认采用白名单策略,仅支持白名单内的客户端访问。

您需要将云服务器ECS的内网IP添加至RDS白名单分组内,手动操作如下截图。

  1. 获取数据库访问地址。

本实验使用云服务器ECS通过RDS Serverless内网地址访问数据库,可以通过RDS实例的数据库连接页面,查看数据库的内网地址。后续步骤需要使用数据库的内网地址

5. 通过ECS终端插入数据并开始压测

本步骤将指导您在配置完成RDS Serverless版实例后,通过使用ECS终端,向RDS数据库插入数据和进行压测。

  1. 在实验室页面右侧的功能栏中,单击 图标,切换至Web Terminal。Web Terminal,即ECS终端,已自动通过ECS的弹性IP地址连接至ECS。

  1. 参考说明在本地修改如下命令中的部分参数取值(确保实例连接地址、数据库帐号、密码信息准确),将正确的命令字符串复制到ECS终端内执行,向数据库中插入数据。
sysbench --threads=128 --time=240 --mysql_host=rm-xxxxxxx.rwlb.rds.aliyuncs.com --mysql-port=3306 --mysql-db=serverless --mysql-user=test_user --mysql-password=Password123 /usr/share/sysbench/oltp_read_write.lua --tables=10 --table_size=10000 --report-interval=1 prepare

参数说明:

  • mysql_host:RDS Serverless版实例的内网地址。本实验RDS实例内网连接地址信息,已经通过云产品资源列表提供,您可以直接快速复制。
  • mysql-port:RDS Serverless版实例的内网端口,默认为3306。
  • mysql-db:为RDS Serverless版实例创建的数据库名称,例如serverless。
  • mysql-user:为RDS Serverless版实例创建的账号,如test_user。
  • mysql-password:为RDS Serverless版实例创建的账号的密码,如Password123。

返回如下结果,表示数据正在插入中,请你耐心等待大约1分钟。

  1. 参考说明在本地修改如下命令中的部分参数取值(确保实例连接地址、数据库帐号、密码信息准确),将正确的命令字符串复制到ECS终端内执行,进行数据库压测。
sysbench --threads=128 --time=240 --histogram=on --mysql_host=rm-xxxxxxx.rwlb.rds.aliyuncs.com --mysql-port=3306 --mysql-db=serverless --mysql-user=test_user --mysql-password=Password123 /usr/share/sysbench/oltp_read_write.lua --report-interval=1 --tables=10 --table_size=10000 run

参数说明:

  • mysql_host:RDS Serverless版实例的内网地址。本实验RDS实例内网连接地址信息,已经通过云产品资源列表提供,您可以直接快速复制。
  • mysql-port:RDS Serverless版实例的内网端口,默认为3306。
  • mysql-db:为RDS Serverless版实例创建的数据库名称,例如serverless。
  • mysql-user:为RDS Serverless版实例创建的账号,如test_user。
  • mysql-password:为RDS Serverless版实例创建的账号的密码,如Password123。

返回结果如下,表示压测已完成。

6. 通过ECS终端插入数据并开始压测

本步骤将指导您在配置完成RDS Serverless版实例后,通过使用ECS终端,向RDS数据库插入数据和进行压测。

  1. 在实验室页面右侧的功能栏中,单击 图标,切换至Web Terminal。

如您选择的是个人资源/免费试用,需输入ECS登录的用户名和密码进行登录。

  1. 执行如下命令,安装sysbench压测软件。
curl -s https://packagecloud.io/install/repositories/akopytov/sysbench/script.rpm.sh | sudo bash
sudo yum -y install sysbench
  1. 参考说明在本地修改如下命令中的部分参数取值(确保实例连接地址、数据库帐号、密码信息准确),将正确的命令字符串复制到ECS终端内执行,向数据库中插入数据。
sysbench --threads=128 --time=240 --mysql_host=rm-xxxxxxx.rwlb.rds.aliyuncs.com --mysql-port=3306 --mysql-db=serverless --mysql-user=test_user --mysql-password=Password123 /usr/share/sysbench/oltp_read_write.lua --tables=10 --table_size=10000 --report-interval=1 prepare

参数说明:

  • mysql_host:RDS Serverless版实例的内网地址。。
  • mysql-port:RDS Serverless版实例的内网端口,默认为3306。
  • mysql-db:为RDS Serverless版实例创建的数据库名称,例如serverless。
  • mysql-user:为RDS Serverless版实例创建的账号,如test_user。
  • mysql-password:为RDS Serverless版实例创建的账号的密码,如Password123。

返回如下结果,表示数据正在插入中,请你耐心等待大约1分钟。

  1. 参考说明在本地修改如下命令中的部分参数取值(确保实例连接地址、数据库帐号、密码信息准确),将正确的命令字符串复制到ECS终端内执行,进行数据库压测。
sysbench --threads=128 --time=240 --histogram=on --mysql_host=rm-xxxxxxx.rwlb.rds.aliyuncs.com --mysql-port=3306 --mysql-db=serverless --mysql-user=test_user --mysql-password=Password123 /usr/share/sysbench/oltp_read_write.lua --report-interval=1 --tables=10 --table_size=10000 run

参数说明:

  • mysql_host:RDS Serverless版实例的内网地址。
  • mysql-port:RDS Serverless版实例的内网端口,默认为3306。
  • mysql-db:为RDS Serverless版实例创建的数据库名称,例如serverless。
  • mysql-user:为RDS Serverless版实例创建的账号,如test_user。
  • mysql-password:为RDS Serverless版实例创建的账号的密码,如Password123。

返回结果如下,表示压测已完成。

7. 观测RCU变化趋势

本步骤将指导您在执行压测后,前往RDS Serverless版实例的详情页,查看RCU变化趋势。

说明 :

  • RCU(RDS Capacity Unit)为计费单位,一个RCU的性能约等于1核2 GiB规格的实例。从观测RCU的变化趋势可以得出,RDS Serverless可以实现动态计费。
  • 本实验所创建RDS Serverless实例资源扩缩范围(RCU)为0.5-5。
  • 本教程以在基本信息页查看RCU变化趋势为例,您也可以前往监控与报警页面查看RCU变化趋势。基本信息页和监控与报警页查看RCU变化趋势,会有延迟,请您稍等片刻并刷新页面。

  1. 切换至远程桌面。在数据库连接页面,单击左侧导航栏的基本信息。在基本信息页面的数据库容量区域,您可以观测到RCU的变化趋势。

说明:

  • 压测开始前,RCU保持在0.5。该阶段实例按照0.5 RCU进行收费。
  • 开始压测后,RCU从0.5快速上升至1.3,该阶段实例按照0.5至1.3 RCU的变化进行动态收费。
  • 压测结束后,RCU从1.3降回0.5。降回0.5后,实例又按照0.5 RCU进行收费。

  1. 调整RCU扩缩范围,观察RCU变化趋势。在基本信息页面的配置信息区域,单击调整弹性设置

例如,在调整弹性设置面板,可以将资源扩缩范围(RCU)的最小值从0.5改为1,上限调整为8,单击确定

返回如下页面,等待运行状态变为运行中,表示RCU扩缩完成。您可以继续观察在压测情况下,RCU变化。

8. 观测RCU变化趋势

本步骤将指导您在执行压测后,前往RDS Serverless版实例的详情页,查看RCU变化趋势。

说明 :

  • RCU(RDS Capacity Unit)为计费单位,一个RCU的性能约等于1核2 GiB规格的实例。从观测RCU的变化趋势可以得出,RDS Serverless可以实现动态计费。
  • 本实验所创建RDS Serverless实例资源扩缩范围(RCU)为0.5-2。
  • 本教程以在基本信息页查看RCU变化趋势为例,您也可以前往监控与报警页面查看RCU变化趋势。基本信息页和监控与报警页查看RCU变化趋势,会有延迟,请您稍等片刻并刷新页面。
  1. 切换至云数据库RDS控制台页签。在左侧导航栏,单击基本信息。在基本信息页面的数据库容量区域,您可以观测到RCU的变化趋势。

说明:

  • 压测开始前,RCU保持在0.5。该阶段实例按照0.5 RCU进行收费。
  • 开始压测后,RCU从0.5快速上升至2,该阶段实例按照0.5至2 RCU的变化进行动态收费。
  • 压测结束后,RCU从2降回0.5。降回0.5后,实例又按照0.5 RCU进行收费。

  1. 调整RCU扩缩范围,观察RCU变化趋势。在基本信息页面的配置信息区域,单击调整弹性设置

例如,在调整弹性设置面板,可以将资源扩缩范围(RCU)的最小值从0.5改为1,单击确定

返回如下页面,等待运行状态变为运行中,表示RCU扩缩完成。您可以重新在云服务器ECS中执行压测,继续观察在压测情况下RCU的变化。

9. 结束实验

在完成实验之后,若您想保留实验相关的云产品资源,请随时关注账户扣费情况。若您不想保留实验相关的云产品资源,释放云产品资源即可。

实验地址:https://developer.aliyun.com/adc/scenario/0bdd43fe52924de4ba3fd0c86f67dcbf

相关实践学习
一小时快速掌握 SQL 语法
本实验带您学习SQL的基础语法,快速入门SQL。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
2月前
|
运维 Serverless 调度
Serverless 应用引擎常见问题之资源使用完影响服务使用如何解决
Serverless 应用引擎(Serverless Application Engine, SAE)是一种完全托管的应用平台,它允许开发者无需管理服务器即可构建和部署应用。以下是Serverless 应用引擎使用过程中的一些常见问题及其答案的汇总:
23 0
|
2月前
|
存储 关系型数据库 MySQL
RDS MySQL 数据库运维简述
从运维的视角,汇总云数据库RDS MySQL使用的避坑指南。文章初版,维护更新,欢迎指点。
798 3
|
2月前
|
SQL 存储 关系型数据库
【MySQL 数据库】11、学习 MySQL 中的【锁】
【MySQL 数据库】11、学习 MySQL 中的【锁】
78 0
|
2月前
|
SQL 关系型数据库 MySQL
【MySQL 数据库】2、MySQL 的数据控制语言、函数和约束
【MySQL 数据库】2、MySQL 的数据控制语言、函数和约束
31 0
|
2月前
|
SQL 关系型数据库 MySQL
【MySQL技术专题】「问题实战系列」深入探索和分析MySQL数据库的数据备份和恢复实战开发指南(8.0版本升级篇)
【MySQL技术专题】「问题实战系列」深入探索和分析MySQL数据库的数据备份和恢复实战开发指南(8.0版本升级篇)
98 0
|
2月前
|
SQL 关系型数据库 MySQL
【MySQL 数据库】4、MySQL 事务学习
【MySQL 数据库】4、MySQL 事务学习
44 0
|
2月前
|
分布式计算 关系型数据库 MySQL
Sqoop【部署 01】CentOS Linux release 7.5 安装配置 sqoop-1.4.7 解决警告并验证(附Sqoop1+Sqoop2最新版安装包+MySQL驱动包资源)
【2月更文挑战第8天】Sqoop CentOS Linux release 7.5 安装配置 sqoop-1.4.7 解决警告并验证(附Sqoop1+Sqoop2最新版安装包+MySQL驱动包资源)
103 1
|
2天前
|
运维 监控 关系型数据库
Serverless 应用引擎产品使用之在阿里云函数计算(FC)中,要访问另一个账号的rds配置rds的白名单如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
13 0
|
7天前
|
负载均衡 关系型数据库 MySQL
MySQL-Proxy实现MySQL读写分离提高并发负载
MySQL-Proxy实现MySQL读写分离提高并发负载
|
13天前
|
SQL 关系型数据库 MySQL
MySQL环境搭建——“MySQL数据库”
MySQL环境搭建——“MySQL数据库”