管理 Amazon Aurora PostgreSQL - Amazon Aurora
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

管理 Amazon Aurora PostgreSQL

以下几个部分介绍如何管理 Amazon Aurora PostgreSQL 数据库集群的性能和扩展。

扩展 Aurora PostgreSQL 数据库实例

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

您可以修改 Aurora PostgreSQL 数据库集群中的每个数据库实例的数据库实例类以扩展数据库集群。Aurora PostgreSQL 支持一些针对 Aurora 优化的数据库实例类。有关 Aurora PostgreSQL 支持的数据库实例类的详细规格,请参阅 数据库实例类支持的数据库引擎适用于 Aurora 的数据库实例类的硬件规格

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

允许连接到 Aurora PostgreSQL 数据库实例的最大数量由数据库实例的实例级参数组中的 max_connections 参数确定。默认情况下,该值将设置成以下等式:

LEAST({DBInstanceClassMemory/9531392},5000)

max_connections 参数设置为此方程式确保允许的连接数量随着实例大小缩放。例如,假设数据库实例类为 db.r4.large,具有 15.25 GiB 内存。则允许的最大连接数为 1600,如以下方程式中所示:

LEAST((15.25*1000000000)/9531392,5000) = 1600

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

实例类 max_connections 默认值
db.r4.large 1600
db.r4.xlarge 3200
db.r4.2xlarge 5000
db.r4.4xlarge 5000
db.r4.8xlarge 5000
db.r4.16xlarge 5000
db.r5.large 1600
db.r5.xlarge 3300
db.r5.2xlarge 5000
db.r5.4xlarge 5000
db.r5.12xlarge 5000
db.r5.24xlarge 5000
db.t3.medium 420

有关 Aurora PostgreSQL 支持的数据库实例类的列表,请参阅 数据库实例类支持的数据库引擎。有关每个数据库实例类的内存量,请参阅 适用于 Aurora 的数据库实例类的硬件规格

Aurora PostgreSQL 的临时存储限制

Aurora PostgreSQL 在 Aurora 存储子系统中存储表和索引。Aurora PostgreSQL 为非持久性临时文件使用单独的临时存储。这包括用于在查询处理过程对大型数据集进行排序或者用于索引构建操作等用途的文件。有关存储的更多信息,请参阅 Amazon Aurora 存储和可靠性

下表显示了每个 Aurora PostgreSQL 数据库实例类可用的最大临时存储空间。

数据库实例类 最大可用临时存储空间 (GiB)
db.r5.24xlarge 1500
db.r5.12xlarge 748
db.r5.4xlarge 249
db.r5.2xlarge 124
db.r5.xlarge 62
db.r5.large 31
db.r4.16xlarge 960
db.r4.8xlarge 480
db.r4.4xlarge 240
db.r4.2xlarge 120
db.r4.xlarge 60
db.r4.large 30
db.t3.medium 7.5

您可以使用 FreeLocalStorage CloudWatch 指标监控数据库实例可用的临时存储,如 Amazon Aurora 指标中所述。

对于某些工作负载,您可以通过为执行操作的进程分配更多内存来减少临时存储量。要增加操作可用的内存,请增加 work_memmaintenance_work_mem PostgreSQL 参数的值。