AWS Aurora Serverless 实战:从0搭建自动伸缩的云数据库(2026最新教程)

📅 · AWS 国际版实战教程 - ChengziCloud

一句话结论

Meta Description: AWS Aurora Serverless 实战完整教程:Serverless v2 与预置版、RDS 三方案对比、控制台与 AWS CLI 创建集群实操、ACU 计价与省钱设置、2026 最新价格表和常见问题 FAQ,新手 30 分钟上手自动伸缩云数据库。

本文要点
  • 前言
  • Aurora Serverless 是什么:一张表看懂 v1 和 v2
  • Serverless v2 vs 预置 Aurora vs RDS:怎么选
  • 实操 1:控制台创建 Serverless v2 集群(10 分钟)
  • 实操 2:AWS CLI 创建(自动化首选)
  • 实操 3:灌数据压测,亲眼看它自动扩容
  • 成本真相:ACU 怎么计价,怎么省钱

Meta Description: AWS Aurora Serverless 实战完整教程:Serverless v2 与预置版、RDS 三方案对比、控制台与 AWS CLI 创建集群实操、ACU 计价与省钱设置、2026 最新价格表和常见问题 FAQ,新手 30 分钟上手自动伸缩云数据库。

关键词:AWS Aurora、Aurora Serverless、Serverless v2、云数据库、RDS、Aurora价格、自动伸缩数据库、AWS数据库教程

前言

答案是:业务流量忽高忽低、又不想花精力预估容量,就用 Aurora Serverless v2——它按秒级自动扩缩容,用多少算多少;流量平稳且长期高位运行的,选 Aurora 预置版配 Savings Plans 更便宜;预算紧张的个人项目,直接白嫖 RDS 免费套餐的 db.t3.micro。 决策口诀:"负载像过山车选 Serverless,稳定压测选预置,极致省钱选 RDS 免费套餐"。

Aurora 是 AWS 的云原生关系型数据库,兼容 MySQL 和 PostgreSQL 协议,底层存储自动跨 3 个可用区复制 6 份副本,故障切换秒级完成。Serverless v2 是它的自动伸缩形态:你不用再回答"该买几核几 G",只需设定一个容量区间(比如 0.5~8 ACU),数据库自己根据 CPU、连接数、内存压力在区间内伸缩,扩容最快只要几秒。本文用 3 套实操(控制台/CLI/SQL 压测)、2 张价格表和 6 个高频 FAQ,带你 30 分钟从 0 搭起一个能自动伸缩的云数据库。

一、Aurora Serverless 是什么:一张表看懂 v1 和 v2

Aurora Serverless 的核心计量单位是 ACU(Aurora Capacity Unit,Aurora 容量单元)。1 个 ACU ≈ 2GB 内存 + 对应比例的 CPU 算力,存储和计算分开计费。目前 AWS 主推 Serverless v2,老旧的 v1 只保留存量集群:

对比项Serverless v2(推荐)Serverless v1(旧版)
支持的引擎MySQL 8.0、PostgreSQL 15+仅 MySQL 5.6/5.7、PG 10
最小容量0.5 ACU(不能缩到 0)0 ACU(可暂停计费)
扩容速度秒级分钟级
单实例上限128 ACU256 ACU(集群级)
新建集群正常创建多数区域已停止新建
结论新项目直接用存量集群尽快迁到 v2

v2 之所以"秒级"扩容,是因为它把计算节点做成无状态的弹性资源池,扩容只是往池子里加算力,不需要复制数据。存储则是 Aurora 的老本行:起步 10GB,自动增长到最大 128TB,按实际占用付费(约 $0.10/GB/月),删数据会同步释放空间,不用像传统 MySQL 那样操心磁盘碎片。

二、Serverless v2 vs 预置 Aurora vs RDS:怎么选

三套方案的价格逻辑完全不同,先看对比表再决定:

对比维度Aurora Serverless v2Aurora 预置版RDS MySQL/PostgreSQL
计价单位ACU 小时实例小时实例小时
容量伸缩0.5~128 ACU 自动手动升配/加只读副本手动升配/加只读副本
扩容速度秒级分钟级(需重启)分钟级(需重启)
起步月成本0.5 ACU ≈ $43/月db.t4g.medium ≈ $55/月db.t3.micro 免费套餐 $0
高可用跨 AZ,需 2 个实例跨 AZ跨 AZ
免费套餐不参与不参与参与(12 个月)
适合场景流量波动大、新项目、不想管容量稳定高并发生产库预算敏感、个人项目、简单场景

选型逻辑很简单:Aurora 全家桶都不参与免费套餐,所以纯新手练手先走 RDS 免费套餐(750 小时 db.t3.micro + 20GB 存储,12 个月,注册避坑见《2026 最新 AWS 免费套餐注册教程》);业务要上生产、流量明显波动时再切 Aurora Serverless v2;压测确认流量长期稳定在高位,改用预置版 + Savings Plans 把单价打下来。完整的关系型数据库选型对比(MySQL vs PostgreSQL vs Aurora)见本站《AWS RDS 云数据库选型教程》。

三、实操 1:控制台创建 Serverless v2 集群(10 分钟)

  1. 登录 AWS 控制台,搜索 RDS 进入数据库页面,点击 创建数据库。
  2. 引擎选项选 Amazon Aurora,版本选 MySQL 兼容(Aurora MySQL 8.0);PostgreSQL 用户选 Aurora PostgreSQL 15+。
  3. 容量类型选 Aurora Serverless v2,设置容量范围:最小 0.5 ACU,最大 8 ACU(个人项目 8 足够,后期可随时改)。
  4. 高可用性:开发环境可以取消勾选"创建备用实例",只保留 1 个写入器实例,成本减半;生产环境务必保留 2 个实例(写入器 + 只读副本)。
  5. 设置管理员用户名(默认 admin)和强密码;数据库实例标识符填 aurora-sls-demo。
  6. 连接:在"联网"里选择默认 VPC,安全组放行 3306 端口(仅对你的办公 IP 放行,不要开 0.0.0.0/0)。
  7. 点击 创建数据库,等待 5~10 分钟状态变为 可用,记下 写入器端点(Writer endpoint)——这是你连接数据库的地址。

创建完成后,集群就处于"待命"状态:最小 0.5 ACU 常驻,一旦有查询进来,容量会在秒级内按需爬升。

四、实操 2:AWS CLI 创建(自动化首选)

脚本化部署用 CLI 更规范。先确认本机装好 AWS CLI 并配置过 aws configure,然后执行:


// 1. 创建集群:MySQL 8.0 兼容,Serverless v2 容量 0.5~8 ACU
aws rds create-db-cluster \
  --db-cluster-identifier aurora-sls-demo \
  --engine aurora-mysql \
  --engine-version 8.0.mysql_aurora.3.08.0 \
  --serverless-v2-scaling-configuration MinCapacity=0.5,MaxCapacity=8 \
  --master-username admin \
  --master-user-password 'YourStrongPass2026!' \
  --vpc-security-group-ids sg-0a1b2c3d4e5f6a7b8

// 2. 添加数据库实例:Serverless v2 的实例类固定为 db.serverless
aws rds create-db-instance \
  --db-instance-identifier aurora-sls-demo-01 \
  --db-cluster-identifier aurora-sls-demo \
  --engine aurora-mysql \
  --db-instance-class db.serverless

// 3. 查询集群状态和写入器端点
aws rds describe-db-clusters \
  --db-cluster-identifier aurora-sls-demo \
  --query 'DBClusters[0].Endpoint'

等 DBClusterStatus 变成 available 后,用任意 MySQL 客户端连接(mysql、MySQL Workbench 均可):


mysql -h CLUSTER_ENDPOINT -P 3306 -u admin -p

五、实操 3:灌数据压测,亲眼看它自动扩容

连接成功后执行下面的 SQL:建库建表,再用存储过程一次性写入 50 万行,模拟突发流量:


// 1. 建库建表
CREATE DATABASE IF NOT EXISTS demo;
USE demo;
CREATE TABLE IF NOT EXISTS orders (
  id INT AUTO_INCREMENT PRIMARY KEY,
  user_id INT NOT NULL,
  amount DECIMAL(10,2) NOT NULL,
  created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

// 2. 存储过程批量造数据
DELIMITER //
CREATE PROCEDURE load_test(IN n INT)
BEGIN
  DECLARE i INT DEFAULT 1;
  WHILE i <= n DO
    INSERT INTO orders (user_id, amount)
    VALUES (FLOOR(RAND()*1000), RAND()*500);
    SET i = i + 1;
  END WHILE;
END//
DELIMITER ;

// 3. 执行:写入 50 万行,观察容量变化
CALL load_test(500000);

压测进行时,打开 CloudWatch 控制台看两个指标:ServerlessDatabaseCapacity(当前实际消耗的 ACU 数)和 ACUUtilization(容量使用率)。你会看到容量在几秒内从 0.5 爬升到 2~4 ACU,写入结束后又慢慢回落——这就是"自动伸缩"的全过程。监控告警的完整配置方法见本站《AWS CloudWatch 监控告警实战》。

六、成本真相:ACU 怎么计价,怎么省钱

Serverless v2 按 ACU 小时计费,MySQL 兼容版约 $0.12/ACU 小时(PostgreSQL 兼容版约 $0.132),us-east-1 参考价:

容量MySQL 小时价PostgreSQL 小时价月成本估算(MySQL,720 小时)
0.5 ACU(最低)$0.06$0.066约 $43
1 ACU$0.12$0.132约 $86
2 ACU$0.24$0.264约 $173
4 ACU$0.48$0.528约 $346
8 ACU$0.96$1.056约 $691
32 ACU$3.84$4.224约 $2,765
128 ACU(上限)$15.36$16.896约 $11,059

注意两个反直觉的事实:第一,v2 缩不到 0——最小 0.5 ACU 常驻,也就是说即使完全闲置,一台实例每月也有约 $43 的底价(这是官方防止"休眠数据库占资源"的设计);第二,I/O 单独计费(约 $0.20/百万次请求),存储约 $0.10/GB/月。省钱的 5 个设置:

  1. 最小容量设 0.5 ACU,别手滑设成 8——区间下限决定闲置成本;
  2. 开发环境只建 1 个实例,不勾选多可用区,成本直接减半;
  3. 空闲期停止集群:AWS 支持停止 Aurora 集群(最长 7 天),停止期间只收存储费,适合周末不跑批的场景;
  4. 索引建好、避免全表扫描:I/O 费用和扫描行数成正比,一条烂 SQL 可能比整个集群还贵;
  5. 预算告警兜底:按《AWS 账单管理:避免天价账单的 10 个关键设置》配好 $1/$10/$50 三层预算告警,扩容异常第一时间知道。

七、常见问题 FAQ

Q: Aurora Serverless 免费吗? A: 不参与免费套餐。新账号只有 RDS(MySQL/PostgreSQL/MariaDB)的 db.t3.micro 750 小时/月免费,Aurora 无论预置版还是 Serverless 都要付费,起步约 $43/月。

Q: Serverless v2 能缩到 0 ACU 完全停费吗? A: 不能,最低 0.5 ACU/实例。能缩到 0 的是已淘汰的 v1(MySQL 5.6/5.7),新项目不建议为省这点钱用旧架构。想停费就用"停止集群"功能(最长 7 天)。

Q: 新手该用 RDS 免费套餐还是 Aurora Serverless? A: 纯学习/个人项目先用 RDS 免费套餐,0 成本跑满 12 个月;业务要上线、流量有波动、需要高可用时再迁 Aurora Serverless v2,迁移用控制台"迁移快照"半小时搞定。

Q: 现有 Aurora 预置集群能转 Serverless v2 吗? A: 可以。修改集群勾选"Serverless v2 容量范围",再把实例类改成 db.serverless 即可,无需迁移数据、几乎不中断服务。反向转换同样支持。

Q: 和 DynamoDB 怎么分工? A: 需要事务、复杂 JOIN、SQL 语法的业务数据(订单、账户)用 Aurora;海量 KV 读写、按主键点查的场景(会话、购物车)用 DynamoDB——后者免费套餐永久有效,详见本站《AWS DynamoDB 无服务器数据库实战》。

Q: 会不会突然扩容导致账单暴涨? A: 不会失控。一是容量受你设置的上限约束(默认 8 ACU);二是扩容需要实际负载触发;三是配合预算告警,任何异常都能在当天发现。把上限设成业务峰值的 1.5 倍是常见做法。

总结

Aurora Serverless v2 的学习路线:控制台或 CLI 建集群(0.5~8 ACU)→ 灌数据压测看 ACU 曲线 → 配好监控告警和预算红线 → 流量稳定后再评估是否转预置版省钱。记住三个决策:形态上负载波动用 Serverless、稳定高位用预置、个人项目白嫖 RDS 免费套餐;成本上容量下限设 0.5、空闲就停集群、I/O 靠索引压住。整套数据库方案搭配无服务器架构,可以做到"零服务器运维"——接口层用 AWS Lambda 无服务器实战,数据层用 Aurora Serverless,两个都是自动伸缩、按量付费,小团队也能跑出大厂架构。

⚠️ 文中价格为 2026 年参考价(us-east-1 按需),实际费用随区域和官方调价变动,请以 AWS 官网为准。

🚀 需要 AWS 国际版账号?通过 3.chengzicloud.cloud 获取最新注册教程与专属优惠,助你轻松上云。

本文由 3.chengzicloud.cloud 提供,点击访问首页了解更多