管理 Aurora Serverless v2 数据库集群 - Amazon Aurora
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

管理 Aurora Serverless v2 数据库集群

借助 Aurora Serverless v2,您的集群可以与预置集群互换。Aurora Serverless v2 属性应用于集群中的一个或多个数据库实例。因此,创建集群、修改集群、创建和恢复快照等过程基本上与其他类型的 Aurora 集群相同。有关管理 Aurora 集群和数据库实例的一般过程,请参阅管理 Amazon Aurora 数据库集群

在接下来的主题中,您可以了解包含 Aurora Serverless v2 数据库实例的集群的管理注意事项。

为集群设置 Aurora Serverless v2 容量范围

要修改包含 Aurora Serverless v2 数据库实例的集群或数据库实例本身的配置参数或其他设置,请遵循与预置集群相同的常规过程。有关详细信息,请参阅修改 Amazon Aurora 数据库集群

Aurora Serverless v2 所特有的最重要设置是容量范围。为 Aurora 集群设置最小和最大 Aurora 容量单位(ACU)值后,无需主动调整集群中的 Aurora Serverless v2 数据库实例容量。Aurora 为您执行调整。此设置在集群级别进行管理。相同的最小和最大 ACU 值适用于集群中的每个 Aurora Serverless v2 数据库实例。

可以设置以下特定值:

  • 最小 ACU – Aurora Serverless v2 数据库实例可以将容量减少到这个数量的 ACU。

  • 最大 ACU – Aurora Serverless v2 数据库实例可以将容量增大到这个数量的 ACU。

注意

当您修改 Aurora Serverless v2 数据库集群的容量范围时,无论您是选择立即应用更改,还是在下一个计划维护时段内应用更改,更改都会立即发生。

有关容量范围的影响以及如何监控和微调容量范围的详细信息,请参阅适用于 Aurora Serverless v2 的重要 Amazon CloudWatch 指标Aurora Serverless v2 的性能和扩缩。您的目标是确保集群的最大容量足够大,可以应对工作负载峰值,而且最低容量足够低,可以在集群不忙碌时最大限度地降低成本。

假设您根据监控情况确定集群的 ACU 范围应该更大、更小、更宽或更窄。您可以使用 Amazon Web Services Management Console、Amazon CLI 或 Amazon RDS API 将 Aurora 集群的容量设置为特定范围的 ACU。此容量范围适用于集群中的每个 Aurora Serverless v2 数据库实例。

例如,假设您的集群的容量范围为 1-16 个 ACU,并包含两个 Aurora Serverless v2 数据库实例。然后,集群作为一个整体消耗介于 2 个 ACU(空闲时)和 32 个 ACU(充分利用时)之间的某个容量。如果您将容量范围从 8 个更改为 20.5 个 ACU,现在集群在空闲时消耗 16 个 ACU,充分利用时最多消耗 41 个 ACU。

Aurora 会根据容量范围内的最大 ACU 值自动设置 Aurora Serverless v2 数据库实例的某些参数值。有关此类参数的列表,请参阅 Aurora Serverless v2 的最大连接数。对于依赖此类计算的静态参数,重启数据库实例时会再次计算该值。因此,您可以在更改容量范围后重启数据库实例来更新此类参数的值。要检查是否需要重启数据库实例以实现此类参数更改,请检查数据库实例的 ParameterApplyStatus 属性。值为 pending-reboot 表示重新启动会对某些参数值应用更改。

您可以使用 Amazon Web Services Management Console 为包含 Aurora Serverless v2 数据库实例的集群设置容量范围。

使用控制台时,您可以在将第一个 Aurora Serverless v2 数据库实例添加到该集群时设置集群的容量范围。创建集群时,如果您为写入器数据库实例选择 Serverless v2(无服务器 v2)数据库实例类,可以设置容量范围。或者,在将 Aurora Serverless v2 读取器数据库实例添加到集群时,如果您选择 Serverless(无服务器)数据库实例类,可以设置容量范围。或者,将集群中现有的预置数据库实例转换为 Serverless(无服务器)数据库实例类时,可以设置容量范围。有关这些过程的完整版本,请参阅创建 Aurora Serverless v2 写入器数据库实例添加 Aurora Serverless v2 读取器将预置写入器或读取器转换为 Aurora Serverless v2

您在集群级别设置的所有容量范围都适用于集群中的所有 Aurora Serverless v2 数据库实例。下图显示了一个具有多个 Aurora Serverless v2 读取器数据库实例的集群。每个实例都有完全相同的容量范围,即 2-64 个 ACU。


          具有多个 Aurora Serverless v2 读取器数据库实例的集群
修改 Aurora Serverless v2 集群的容量范围
  1. 通过以下网址打开 Amazon RDS 控制台:https://console.aws.amazon.com/rds/

  2. 在导航窗格中,选择 Databases(数据库)。

  3. 从列表中选择包含 Aurora Serverless v2 数据库实例的集群。该集群必须已包含至少一个 Aurora Serverless v2 数据库实例。否则,Aurora 不会显示 Capacity range(容量范围)部分。

  4. 对于 Actions(操作),选择 Modify(修改)。

  5. Capacity range(容量范围)部分,选择以下选项:

    1. Minimum ACUs(最小 ACU)中输入一个值。控制台会显示允许的值范围。您可以从最少 0.5 个 ACU 至最多 128 个 ACU 中进行选择,增量为 0.5 个 ACU。

    2. Maximum ACUs(最大 ACU)中输入一个值。此值必须大于或等于 Minimum ACUs(最小 ACU)。控制台会显示允许的值范围。下图显示了该选项。

      
                  修改数据库集群容量之更改容量的屏幕截图
  6. 选择 Continue(继续)。此时将显示 Summary of modifications(修改摘要)页面。

  7. 选择立即应用

    容量修改会立即发生,无论您是选择立即应用更改,还是在下一个计划维护时段内应用更改。

  8. 选择 Modify cluster(修改集群)以接受修改摘要。您还可以选择 Back(上一步)以修改更改,或选择 Cancel(取消)以放弃更改。

使用 Amazon CLI,运行 modify-db-cluster Amazon CLI 命令,设置打算使用 Aurora Serverless v2 数据库实例的集群的容量。指定 --serverless-v2-scaling-configuration 选项。集群可能已经包含一个或多个 Aurora Serverless v2 数据库实例,或者您可以稍后添加数据库实例。MinCapacityMaxCapacity 字段的有效值包括如下项:

  • 0.511.52 等等,增量为 0.5,最大为 128。

在此示例中,将一个名为 sample-cluster 的 Aurora 数据库集群的 ACU 范围设置为至少 48.5,最大值为 64。

aws rds modify-db-cluster --db-cluster-identifier sample-cluster \ --serverless-v2-scaling-configuration MinCapacity=48.5,MaxCapacity=64

容量修改会立即发生,无论您是选择立即应用更改,还是在下一个计划维护时段内应用更改。

完成之后,您可以向集群中添加 Aurora Serverless v2 数据库实例,每个新数据库实例可以在 48.5 至 64 个 ACU 之间扩缩。新的容量范围也适用于群集中已存在的任何 Aurora Serverless v2 数据库实例。如有必要,数据库实例会扩展或缩减,以便处于新的容量范围内。

有关使用 CLI 设置容量范围的其他示例,请参阅选择 Aurora 集群的 Aurora Serverless v2 容量范围

要使用 Aurora Serverless 修改 Amazon CLI 数据库集群的扩展配置,请运行 modify-db-cluster Amazon CLI 命令。指定 --serverless-v2-scaling-configuration 选项以配置最小容量和最大容量。有效的容量值包括:

  • Aurora MySQL:0.511.52 等等,增量为 0.5 个 ACU,最大为 128

  • Aurora PostgreSQL:0.511.52 等等,增量为 0.5 个 ACU,最大为 128

在以下示例中,修改名为 sample-cluster 的集群中名为 sample-instance 的 Aurora Serverless v2 数据库实例的扩缩配置。

对于 Linux、macOS 或 Unix:

aws rds modify-db-cluster --db-cluster-identifier sample-cluster \ --serverless-v2-scaling-configuration MinCapacity=8,MaxCapacity=64

对于 Windows:

aws rds modify-db-cluster --db-cluster-identifier sample-cluster ^ --serverless-v2-scaling-configuration MinCapacity=8,MaxCapacity=64

您可以使用 ModifyDBCluster API 操作设置 Aurora 数据库实例的容量。指定 ServerlessV2ScalingConfiguration 参数。MinCapacityMaxCapacity 字段的有效值包括如下项:

  • 0.511.52 等等,增量为 0.5,最大为 128。

您可以使用 ModifyDBCluster API 操作修改包含 Aurora Serverless v2 数据库实例的集群的扩缩配置。指定 ServerlessV2ScalingConfiguration 参数以配置最小容量和最大容量。有效的容量值包括:

  • Aurora MySQL:0.511.52 等等,增量为 0.5 个 ACU,最大为 128

  • Aurora PostgreSQL:0.511.52 等等,增量为 0.5 个 ACU,最大为 128

容量修改会立即发生,无论您是选择立即应用更改,还是在下一个计划维护时段内应用更改。

检查 Aurora Serverless v2 的容量范围

在检查 Aurora Serverless v2 群集的容量范围过程中,您需要先设置容量范围。如果尚未执行此操作,请按照为集群设置 Aurora Serverless v2 容量范围中的步骤进行操作。

您在集群级别设置的所有容量范围都适用于集群中的所有 Aurora Serverless v2 数据库实例。下图显示了一个具有多个 Aurora Serverless v2 数据库实例的集群。每个实例都有完全相同的容量范围。


      具有多个 Aurora Serverless v2 数据库实例的集群详细信息

您也可以查看集群中的任意 Aurora Serverless v2 数据库实例的详细信息页面。Configuration(配置)选项卡会显示数据库实例的容量范围。


      数据库实例配置用户界面的“实例类型”部分

您还可以在集群的 Modify(修改)页面上查看该集群的当前容量范围。下图显示了如何操作。此时,您可以更改容量范围。有关设置或更改容量范围的所有方法,请参阅为集群设置 Aurora Serverless v2 容量范围


      Aurora Serverless v2 容量设置的用户界面

检查 Aurora 集群的当前容量范围

您可以通过检查集群的 ServerlessV2ScalingConfiguration 属性来查看为集群中的 Aurora Serverless v2 数据库实例配置的容量范围。以下 Amazon CLI 示例显示的集群最小容量为 0.5 个 Aurora 容量单位(ACU),最大容量为 16 个 ACU。

$ aws rds describe-db-clusters --db-cluster-identifier serverless-v2-64-acu-cluster \ --query 'DBClusters[*].[ServerlessV2ScalingConfiguration]' [ [ { "MinCapacity": 0.5, "MaxCapacity": 16.0 } ] ]

添加 Aurora Serverless v2 读取器

要向集群添加 Aurora Serverless v2 读取器数据库实例,请遵循与将 Aurora 副本添加到数据库集群中相同的常规过程。选择新数据库实例的 Serverless v2(无服务器 v2)实例类。

如果读取器数据库实例是集群中的第一个 Aurora Serverless v2 数据库实例,您还可以选择容量范围。下图显示了用于指定最小和最大 Aurora 容量单位(ACU)的控件。此设置适用于此读取器数据库实例以及您添加到集群的任何其他 Aurora Serverless v2 数据库实例。每个 Aurora Serverless v2 数据库实例可以在最小和最大 ACU 值之间进行扩缩。


      实例配置用户界面

如果您已经将任何 Aurora Serverless v2 数据库实例添加到集群中,则添加另一个 Aurora Serverless v2 读取器数据库实例会显示当前的容量范围。下图显示了这些只读控件。

如果要更改集群的容量范围,请按照中为集群设置 Aurora Serverless v2 容量范围的步骤进行操作。

对于包含多个读取器数据库实例的集群,各个 Aurora Serverless v2 读取器数据库实例的故障转移优先级在该数据库实例如何扩展和缩减方面起着重要作用。在最初创建集群时无法指定优先级。向集群添加第二个读取器数据库实例或后续数据库实例时,请记住此属性。有关更多信息,请参阅为 Aurora Serverless v2 读取器选择提升层

有关查看集群当前容量范围的其他方法,请参阅检查 Aurora Serverless v2 的容量范围

将预置写入器或读取器转换为 Aurora Serverless v2

您可以将预置数据库实例转换为使用 Aurora Serverless v2。为此,请按照修改数据库集群中的数据库实例中的步骤操作。集群必须满足 Aurora Serverless v2 的要求和限制中的要求。例如,Aurora Serverless v2 数据库实例要求集群运行某些最低引擎版本。

假设您正在转换运行中的预置集群以利用 Aurora Serverless v2。在这种情况下,您可以在转换过程中的第一步将数据库实例转换为 Aurora Serverless v2,从而更大限度地减少停机时间。有关完整过程,请参阅从预置集群切换到 Aurora Serverless v2

如果您转换的数据库实例是集群中的第一个 Aurora Serverless v2 数据库实例,您可以在执行 Modify(修改)操作时为集群选择容量范围。此容量范围适用于您添加到集群中的每个 Aurora Serverless v2 数据库实例。下图显示了用于指定最小和最大 Aurora 容量单位(ACU)的页面。


      实例配置用户界面

有关容量范围意义的详细信息,请参阅 Aurora Serverless v2 容量

如果集群已包含一个或多个 Aurora Serverless v2 数据库实例,您可以在执行 Modify(修改)操作时查看现有的容量范围。下图显示了该信息面板的示例。


      容量范围信息面板

如果要在添加多个 Aurora Serverless v2 数据库实例之后更改集群的容量范围,请按照为集群设置 Aurora Serverless v2 容量范围中的步骤进行操作。

将 Aurora Serverless v2 写入器或读取器转换为预置

您可以将 Aurora Serverless v2 数据库实例转换为预置数据库实例。为此,请按照修改数据库集群中的数据库实例中的步骤操作。选择除 Serverless(无服务器)之外的其他数据库实例类。

如果需要的容量比 Aurora Serverless v2 数据库实例的最大 Aurora 容量单位(ACU)提供的容量更大,您可以将 Aurora Serverless v2 数据库实例转换为预置实例。例如,最大的 db.r5 和 db.r6g 数据库实例类的内存容量比 Aurora Serverless v2 数据库实例可扩展的容量更大。

提示

一些较旧的数据库实例类(例如 db.r3 和 db.t2)不适用于您与 Aurora Serverless v2 配合使用的 Aurora 版本。要查看在将 Aurora Serverless v2 数据库实例转换为预置实例时可以使用哪些数据库实例类,请参阅数据库实例类支持的数据库引擎

如果要将集群的写入器数据库实例从 Aurora Serverless v2 转换为预置实例,您可以按照与从预置集群切换到 Aurora Serverless v2中相反的步骤进行操作。将集群中的其中一个读取器数据库实例从 Aurora Serverless v2 切换为预置。然后执行故障转移以使预置的数据库实例放入写入器。

即使从集群中移除所有 Aurora Serverless v2 数据库实例,之前为集群指定的任何容量范围会保持不变。如果要更改容量范围,您可以修改集群,如为集群设置 Aurora Serverless v2 容量范围中所述。

为 Aurora Serverless v2 读取器选择提升层

对于包含多个 Aurora Serverless v2 数据库实例或预置实例和 Aurora Serverless v2 数据库实例混用的集群,请注意每个 Aurora Serverless v2 数据库实例的提升层设置。此设置控制的 Aurora Serverless v2 数据库实例行为比预置数据库实例更多。

在 Amazon Web Services Management Console 中,使用 Create database(创建数据库)、Modify instance(修改实例)和 Add reader(添加读取器)页面的 Additional configuration(额外配置)下面的 Failover priority(故障转移优先级)选项来指定此设置。您可以在 Databases(数据库)页面上可选的 Priority tier(优先级层)中看到现有数据库实例的这个属性。您还可以在数据库集群或数据库实例的详细信息页面上看到此属性。

对于预置的数据库实例,0—15 层的选择仅决定在故障转移操作期间 Aurora 选择将读取器数据库实例提升为写入器的顺序。对于 Aurora Serverless v2 读取器数据库实例,层号还决定了数据库实例是扩展以匹配写入器数据库实例的容量,还是根据自己的工作负载单独扩展。第 0 层或第 1 层中的 Aurora Serverless v2 读取器数据库实例保持至少与写入器数据库实例同样高的最小容量。这样,它们就可以准备好在发生故障转移的情况下接管写入器数据库实例。如果写入器数据库实例是预置数据库实例,Aurora 会估算等效的 Aurora Serverless v2 容量。它使用该估计值作为 Aurora Serverless v2 读取器数据库实例的最小容量。

第 2-15 层中的 Aurora Serverless v2 读取器数据库实例对其最小容量没有这样的限制。当它们处于空闲状态时,它们可以缩减到集群的容量范围中指定的最小 Aurora 容量单位(ACU)值。

以下 Linux Amazon CLI 示例显示了如何检查集群中所有数据库实例的提升层。对于写入器数据库实例,最后一个字段包含 True 值,对于所有读取器数据库实例,该字段包含 False 值。

$ aws rds describe-db-clusters --db-cluster-identifier promotion-tier-demo \ --query 'DBClusters[*].DBClusterMembers[*].[PromotionTier,DBInstanceIdentifier,IsClusterWriter]' \ --output text 1 instance-192 True 1 tier-01-4840 False 10 tier-10-7425 False 15 tier-15-6694 False

以下 Linux Amazon CLI 示例显示了如何更改集群中特定数据库实例的提升层。这些命令首先使用新的提升层修改数据库实例。然后,他们等待数据库实例再次变为可用,接着确认数据库实例的新提升层。

$ aws rds modify-db-instance --db-instance-identifier instance-192 --promotion-tier 0 $ aws rds wait db-instance-available --db-instance-identifier instance-192 $ aws rds describe-db-instances --db-instance-identifier instance-192 \ --query '*[].[PromotionTier]' --output text 0

有关为不同使用案例指定提升层销级别的更多指导,请参阅 Aurora Serverless v2 扩缩

将 TLS/SSL 与 Aurora Serverless v2 结合使用

Aurora Serverless v2 可以使用传输层安全性/安全套接字层(TLS/SSL)协议来加密客户端和 Aurora Serverless v2 数据库实例之间的通信。它支持 TLS/SSL 1.0、1.1 和 1.2 版本。有关将 TLS/SSL 与 Aurora 结合使用的一般信息,请参阅将 TLS 与 Aurora MySQL 数据库集群结合使用

要了解有关使用 MySQL 客户端连接到 Aurora MySQL 数据库的更多信息,请参阅连接到运行 MySQL 数据库引擎的数据库实例

Aurora Serverless v2 支持 MySQL 客户端(mysql)和 PostgreSQL 客户端(psql)可用的所有 TLS/SSL 模式,包括下表中列出的模式。

TLS/SSL 模式的说明 mysql psql

不使用 TLS/SSL 进行连接。

DISABLED

disable

首先尝试使用 TLS/SSL 进行连接,但如有必要,请回退到非 SSL。

PREFERRED

首选(默认)

使用 TLS/SSL 强制执行。

REQUIRED

require

强制 TLS/SSL 并验证证书颁发机构(CA)。

VERIFY_CA

verify-ca

强制执行 TLS/SSL,验证 CA 并验证 CA 主机名。

VERIFY_IDENTITY

verify-full

Aurora Serverless v2 使用通配符证书。如果您在使用 TLS/SSL 时指定“验证 CA”或“验证 CA 和 CA 主机名”选项,请首先从 Amazon Trust Services 下载 Amazon root CA 1 信任存储。完成此操作后,您可以在客户端命令中识别此 PEM 格式的文件。要使用 PostgreSQL 客户端执行此操作,请执行以下操作。

对于 Linux、macOS 或 Unix:

psql 'host=endpoint user=user sslmode=require sslrootcert=amazon-root-CA-1.pem dbname=db-name'

要了解有关通过 Postgres 客户端使用 Aurora PostgreSQL 数据库的更多信息,请参阅连接到运行 PostgreSQL 数据库引擎的数据库实例

有关更多连接到 Aurora 数据库集群的一般信息,请参阅 连接到 Amazon Aurora 数据库集群

支持的用于 Aurora Serverless v2 数据库集群连接的密码套件

通过使用可配置的密码套件,您可以更好地控制数据库连接的安全性。您可以指定想要允许保护客户端与数据库的 TLS/SSL 连接的密码套件列表。使用可配置的密码套件,您现在可以控制数据库服务器接受的连接加密。这样做可以防止使用不安全或不再使用的密码。

基于 Aurora MySQL 的 Aurora Serverless v2 数据库集群支持与 Aurora MySQL 预配的数据库集群相同的密码套件。有关这些密码套件的信息,请参阅配置密码套件以连接到 Aurora MySQL 数据库集群

基于 Aurora PostgreSQL 的 Aurora Serverless v2 数据库集群支持与 Aurora PostgreSQL 预配的数据库集群相同的密码套件。有关这些密码套件的信息,请参阅配置密码套件以连接到 Aurora PostgreSQL 数据库集群

查看 Aurora Serverless v2 写入器和读取器

您可以使用查看预置数据库实例的相同方式来查看 Aurora Serverless v2 数据库实例的详细信息。为此,请按照查看 Amazon Aurora 数据库集群中的常规过程进行操作。一个集群可能包含所有 Aurora Serverless v2 数据库实例、所有预置数据库实例或这两类中的一部分实例。

在创建一个或多个 Aurora Serverless v2 数据库实例后,您可以查看哪些数据库实例是 Serverless(无服务器)类型,哪些是 Instance(实例)类型。您还可以查看 Aurora Serverless v2 数据库实例可以使用的最小和最大 Aurora 容量单位(ACU)。每个 ACU 是处理器(CPU)和内存(RAM)容量的组合。此容量范围适用于集群中的每个 Aurora Serverless v2 数据库实例。有关检查集群或集群中的任何 Aurora Serverless v2 数据库实例的容量范围的过程,请参阅检查 Aurora Serverless v2 的容量范围

在 Amazon Web Services Management Console 中,在 Databases(数据库)页面中的 Size(大小)栏下面标记 Aurora Serverless v2 数据库实例。预置数据库实例显示数据库实例类的名称,例如 r6g.xlarge。Aurora Serverless 数据库实例为数据库实例类显示 Serverless(无服务器),以及数据库实例的最小和最大容量。例如,您可能会看到 Serverless v2 (4–64 ACUs) [无服务器 v2(4-64 个 ACU)] 或 Serverless v2 (1–40 ACUs) [无服务器 v2(1-40 个 ACU)]。

您可以在控制台中每个 Aurora Serverless v2 数据库实例的 Configuration(配置)选项卡上找到相同信息。例如,您可能会看到如下所示的 Instance type(实例类型)部分。在这里,Instance type(实例类型)值为 Serverless v2(无服务器 v2),Minimum capacity(最小容量)值为 2 ACU (4 GiB)Maximum capacity(最大容量)值为 64 ACU (128 GiB)


      数据库实例配置用户界面的“实例类型”部分

您可以监控每个 Aurora Serverless v2 数据库实例的容量随时间推移发生的变化。这样,您可以检查每个数据库实例消耗的最小、最大和平均 ACU。您还可以查看数据库实例距离其最小容量或最大容量有多近。要在 Amazon Web Services Management Console 中查看此类详细信息,请查看数据库实例的 Monitoring(监控)选项卡上的 Amazon CloudWatch 指标图形。有关要查看的指标以及如何解读指标的信息,请参阅适用于 Aurora Serverless v2 的重要 Amazon CloudWatch 指标

Aurora Serverless v2 的日志记录

要启用数据库日志记录,请使用自定义参数组中的配置参数指定要启用的日志。

对于 Aurora MySQL,您可以启用以下日志。

Aurora MySQL 描述

general_log

创建常规日志。设置为 1 以开启。默认为关闭 (0)。

log_queries_not_using_indexes

将任何查询记录到不使用索引的慢速查询日志中。默认为关闭 (0)。设置为 1 以开启此日志。

long_query_time

防止快速运行的查询记录在慢速查询日志中。可以设置为 0 到 31536000 之间的浮动值。默认值为 0(不活动)。

server_audit_events

要在日志中捕获的事件列表。支持的值有 CONNECTQUERYQUERY_DCLQUERY_DDLQUERY_DMLTABLE

server_audit_logging

设置为 1 以打开服务器审核日志记录。如果启用此选项,则可以通过在 server_audit_events 参数中列出审核事件来指定要发送到 CloudWatch 的审计事件。

slow_query_log

创建慢速查询日志。设置为 1 以打开慢速查询日志。默认为关闭 (0)。

有关更多信息,请参阅在 Amazon Aurora MySQL 数据库集群中使用高级审计

对于 Aurora PostgreSQL,您可以对 Aurora Serverless v2 数据库实例启用以下日志。

Aurora PostgreSQL 描述

log_connections

记录每个成功的连接。

log_disconnections

记录会话结束,包括持续时间。

log_lock_waits

默认值为 0(关闭)。设置为 1 以记录锁定等待。

log_min_duration_statement

语句在记录前运行的最短持续时间(以毫秒为单位)。

log_min_messages

设置记录的消息级别。支持的值为 debug5debug4debug3debug2debug1infonoticewarningerrorlogfatalpanic。将性能数据记录到 postgres 日志,将值设置为 debug1

log_temp_files

记录指定千字节 (kB) 以上的临时文件的使用情况。

log_statement

控制被记录的特定 SQL 语句。支持的值有 noneddlmodall。默认为 none

使用 Amazon CloudWatch 进行日志记录

使用 Aurora Serverless v2 的日志记录中的步骤选择要打开哪些数据库日志之后,您可以选择将哪些日志上传(“发布”)到 Amazon CloudWatch。

您可以使用 Amazon CloudWatch 来分析日志数据、创建警报和查看指标。默认情况下,Aurora Serverless v2 的错误日志已启用并自动上传到 CloudWatch。您还可以将其他日志从 Aurora Serverless v2 数据库实例上传到 CloudWatch。

然后,使用 Amazon Web Services Management Console中的 Log exports(日志导出)设置,或 Amazon CLI 中的 --enable-cloudwatch-logs-exports 选项,选择将哪些日志上载到 CloudWatch。

您可以选择将哪些 Aurora Serverless v2 日志上传到 CloudWatch。有关更多信息,请参阅在 Amazon Aurora MySQL 数据库集群中使用高级审计

与任何类型的 Aurora 数据库集群一样,您无法修改默认数据库集群参数组。相反,您是根据数据库集群和引擎类型的默认参数来创建自己的数据库集群参数组。我们建议您在创建 Aurora Serverless v2 数据库集群之前创建您的自定义数据库集群参数组,以便在控制台上创建数据库时可以选择该参数组。

注意

对于 Aurora Serverless v2,您可以同时创建数据库集群和数据库参数组。这与 Aurora Serverless v1 形成对比,在此版本中,您只能创建数据库集群参数组。

在 Amazon CloudWatch 中查看 Aurora Serverless v2 日志

使用 使用 Amazon CloudWatch 进行日志记录中的步骤选择要打开哪些数据库日志之后,您可以查看日志的内容。

有关将 CloudWatch 与 Aurora MySQL 和 Aurora PostgreSQL 日志配合使用的更多信息,请参阅在 Amazon CloudWatch 中监控日志事件将 Aurora PostgreSQL 日志发布到 Amazon CloudWatch Logs

要查看 Aurora Serverless v2 数据库集群的日志
  1. 通过以下网址打开 CloudWatch 控制台:https://console.aws.amazon.com/cloudwatch/

  2. 选择您的 Amazon Web Services 区域。

  3. 选择 Log groups(日志组)。

  4. 从列表中选择 Aurora Serverless v2 数据库集群日志。日志命名模式如下所示。

    /aws/rds/cluster/cluster-name/log_type
注意

对于 Aurora MySQL 兼容的 Aurora Serverless v2 数据库集群,即使没有错误,错误日志也包括缓冲池扩展事件。

Amazon CloudWatch 所含的监控功能

对于 Aurora Serverless v2,您可以使用 CloudWatch 来监控集群中的所有 Aurora Serverless v2 数据库实例的容量和使用率。您可以查看实例级指标,以便检查在每个 Aurora Serverless v2 数据库实例扩展和缩减时的容量。您还可以将与容量相关的指标与其他指标进行比较,以了解工作负载的变化如何影响资源消耗。例如,您可以将 ServerlessDatabaseCapacityDatabaseUsedMemoryDatabaseConnectionsDMLThroughput 进行比较,以评估数据库集群在运营期间的响应情况。有关适用于 Aurora Serverless v2 与容量相关的指标的详细信息,请参阅 适用于 Aurora Serverless v2 的重要 Amazon CloudWatch 指标

监控 Aurora Serverless v2 数据库集群的容量
  1. 通过以下网址打开 CloudWatch 控制台:https://console.aws.amazon.com/cloudwatch/

  2. 选择 Metrics(指标)。所有可用指标在控制台中显示为卡片,按服务名称进行分组。

  3. 选择 RDS

  4. (可选)使用 Search(搜索)框以查找对 Aurora Serverless v2 特别重要的指标:ServerlessDatabaseCapacityACUUtilizationCPUUtilizationFreeableMemory

我们建议您使用与容量相关的指标设置 CloudWatch 控制面板来监控 Aurora Serverless v2 数据库集群容量。要了解操作方法,请参阅使用 CloudWatch 构建仪表板

要了解有关将 Amazon CloudWatch 与 Amazon Aurora 结合使用的更多信息,请参阅 将 Amazon Aurora MySQL 日志发布到 Amazon CloudWatch Logs