管理 Amazon Aurora MySQL 性能和扩展 - Amazon Aurora
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

管理 Amazon Aurora MySQL 性能和扩展

扩展 Aurora MySQL 数据库实例

您可通过两种方式扩展 Aurora MySQL 数据库实例,即实例扩展和读取扩展。有关读取扩展的更多信息,请参阅读取扩展

您可以通过修改数据库集群中每个数据库实例的数据库实例类,来扩展 Aurora MySQL 数据库集群。Aurora MySQL 支持多种针对 Aurora 优化的数据库实例类。不要将 db.t2 或 db.t3 实例类用于大小大于 40 TB 的较大 Aurora 集群。有关 Aurora MySQL 支持的数据库实例类的规格,请参阅Aurora 数据库实例类

注意

建议仅将 T 数据库实例类用于开发和测试服务器,或其他非生产服务器。有关 T 实例类的更多详细信息,请参阅使用 T 实例类进行开发和测试

至 Aurora MySQL 数据库实例的最大连接数

允许连接到 Aurora MySQL 数据库实例的最大数量由数据库实例的实例级参数组中的 max_connections 参数确定。

下表列出了可用于 Aurora MySQL 的每个数据库实例类的结果 max_connections 默认值。您可通过增加内存将实例缩放为数据库实例类,或通过将实例的数据库参数组中的 max_connections 参数设置为更大的值(最大为 16,000)来增加至您的 Aurora MySQL 数据库实例的最大连接数。

提示

如果您的应用程序经常打开和关闭连接,或使大量长期连接保持打开,我们建议您使用 Amazon RDS 代理。RDS 代理是一种完全托管的高可用性数据库代理,它使用连接池安全有效地共享数据库连接。要了解有关 RDS 代理的更多信息,请参阅将 Amazon RDS 代理用于 Aurora

有关 Aurora Serverless v2 实例如何处理此参数的详细信息,请参阅 Aurora Serverless v2 的最大连接数

实例类 max_connections 默认值

db.t2.small

45

db.t2.medium

90

db.t3.small

45

db.t3.medium

90

db.t3.large

135

db.t4g.medium

90

db.t4g.large

135

db.r3.large

1000

db.r3.xlarge

2000

db.r3.2xlarge

3000

db.r3.4xlarge

4000

db.r3.8xlarge

5000

db.r4.large

1000

db.r4.xlarge

2000

db.r4.2xlarge

3000

db.r4.4xlarge

4000

db.r4.8xlarge

5000

db.r4.16xlarge

6000

db.r5.large

1000

db.r5.xlarge

2000

db.r5.2xlarge

3000

db.r5.4xlarge

4000

db.r5.8xlarge

5000

db.r5.12xlarge

6000

db.r5.16xlarge

6000

db.r5.24xlarge

7000

db.r6g.large 1000
db.r6g.xlarge 2000
db.r6g.2xlarge 3000
db.r6g.4xlarge 4000
db.r6g.8xlarge 5000
db.r6g.12xlarge 6000
db.r6g.16xlarge 6000
db.r6i.large 1000
db.r6i.xlarge 2000
db.r6i.2xlarge 3000
db.r6i.4xlarge 4000
db.r6i.8xlarge 5000
db.r6i.12xlarge 6000
db.r6i.16xlarge 6000
db.r6i.24xlarge 7000
db.r6i.32xlarge 7000
db.x2g.large 2000
db.x2g.xlarge 3000
db.x2g.2xlarge 4000
db.x2g.4xlarge 5000
db.x2g.8xlarge 6000
db.x2g.12xlarge 7000
db.x2g.16xlarge 7000

如果创建新的参数组以自定义您自己的连接限制默认值,您将看到默认连接限制是使用基于 DBInstanceClassMemory 值的公式得出的。正如上表中所示,由于逐渐增大的 R3、R4 和 R5 实例之间的内存加倍,该公式生成的连接限制将增加 1000;而对于 T2 和 T3 实例的不同内存大小,该限制将增加 45。

请参阅指定数据库参数,详细了解 DBInstanceClassMemory 的计算方式。

Aurora MySQL 和 RDS for MySQL 数据库实例的内存开销不同。因此,对于使用相同实例类的 Aurora MySQL 和 RDS for MySQL 数据库实例,max_connections 值可能不同。表中的值仅适用于 Aurora MySQL 数据库实例。

注意

T2 和 T3 实例的连接限制低得多是因为,对于 Aurora,这些实例类仅用于开发和测试方案,而不用于生产工作负载。

在对其他主要内存使用者(例如,缓冲池和查询缓存)使用默认值的系统中,将调整默认连接限制。如果为集群更改这些其他设置,请考虑调整连接限制以将数据库实例上的可用内存增加或减少情况考虑在内。

Aurora MySQL 的临时存储限制

Aurora MySQL 将表和索引储存在 Aurora 存储子系统中。Aurora MySQL 对非持久性临时文件和非 InnoDB 临时表使用单独的临时或本地存储。本地存储还包括用于在查询处理过程中对大型数据集进行排序或者用于索引构建操作等用途的文件。它不包括 InnoDB 临时表。

有关 Aurora MySQL 版本 3 中临时表的更多信息,请参阅 Aurora MySQL 版本 3 中的新临时表行为。有关版本 2 中临时表的更多信息,请参阅 Aurora MySQL 版本 2 中的临时表空间行为

在启动和停止数据库实例以及更换主机期间,这些卷上的数据和临时文件会丢失。

这些本地存储卷由 Amazon Elastic Block Store(EBS)提供支持,并可以通过使用更大的数据库实例类来进行扩展。有关存储的更多信息,请参阅 Amazon Aurora 存储和可靠性

本地存储还用于使用 LOAD DATA FROM S3LOAD XML FROM S3 从 Amazon S3 导入数据,以及使用 SELECT INTO OUTFILE S3 将数据导出到 S3。有关从 S3 导入和导出到 S3 的更多信息,请参阅以下内容:

Aurora MySQL 使用单独的永久存储空间来存储大多数 Aurora MySQL 数据库实例类的错误日志、常规日志、慢速查询日志和审计日志(不包括可突增性能实例类类型,例如 db.t2、db.t3 和 db.t4g)。在启动和停止数据库实例以及更换主机期间,会保留该卷上的数据。

此永久性存储卷还由 Amazon EBS 提供支持,并且根据数据库实例类别具有固定大小。不能通过使用更大的数据库实例类来对它进行扩展。

下表显示了每个 Aurora MySQL 数据库实例类可用的最大临时和永久性存储空间。有关 Aurora 的数据库实例类支持的更多信息,请参阅 Aurora 数据库实例类

数据库实例类 最大可用临时/本地存储空间(GiB) 日志文件可用的额外最大存储空间(GiB)
db.x2g.16xlarge 1 280 500
db.x2g.12xlarge 960 500
db.x2g.8xlarge 640 500
db.x2g.4xlarge 320 500
db.x2g.2xlarge 160 60
db.x2g.xlarge 80 60
db.x2g.large 40 60
db.r6i.32xlarge 2560 500
db.r6i.24xlarge 1920 500
db.r6i.16xlarge 1 280 500
db.r6i.12xlarge 960 500
db.r6i.8xlarge 640 500
db.r6i.4xlarge 320 500
db.r6i.2xlarge 160 60
db.r6i.xlarge 80 60
db.r6i.large 32 60
db.r6g.16xlarge 1 280 500
db.r6g.12xlarge 960 500
db.r6g.8xlarge 640 500
db.r6g.4xlarge 320 500
db.r6g.2xlarge 160 60
db.r6g.xlarge 80 60
db.r6g.large 32 60
db.r5.24xlarge 1920 500
db.r5.16xlarge 1 280 500
db.r5.12xlarge 960 500
db.r5.8xlarge 640 500
db.r5.4xlarge 320 500
db.r5.2xlarge 160 60
db.r5.xlarge 80 60
db.r5.large 32 60
db.r4.16xlarge 1 280 500
db.r4.8xlarge 640 500
db.r4.4xlarge 320 500
db.r4.2xlarge 160 60
db.r4.xlarge 80 60
db.r4.large 32 60
db.t4g.large 32
db.t4g.medium 32
db.t3.large 32
db.t3.medium 32
db.t3.small 32
db.t2.medium 32
db.t2.small 32
重要

这些值表示每个数据库实例理论上的最大可用存储空间。​可供您使用的实际本地存储空间可能会更小。Aurora 会在管理过程中占用一些本地存储,数据库实例甚至在加载任何数据之前也会占用一些本地存储。您可以使用 FreeLocalStorageCloudWatch 指标监控指定数据库实例可用的临时存储,如 Amazon Aurora 的 Amazon CloudWatch 指标 中所述。目前您可以检查空闲存储空间大小。您还可以随时间推移绘制空闲存储空间大小。监控一段时间内的空闲存储情况可以帮助您确定空闲存储空间大小是在增加还是减少,或者找到最小值、最大值或平均值。

(这不适用于 Aurora Serverless v2。)