修改 Amazon RDS 的多可用区数据库集群 - Amazon Relational Database Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

修改 Amazon RDS 的多可用区数据库集群

多可用区数据库集群在三个独立可用区中有一个写入器数据库实例和两个读取器数据库实例。与多可用区部署相比,多可用区数据库集群可提供高可用性、增加读取工作负载容量以及更低的延迟。有关多可用区数据库集群的更多信息,请参阅 Amazon RDS 的多可用区数据库集群部署

您可以修改多可用区数据库集群以更改其设置。您还可以对多可用区数据库集群执行操作,例如获取其快照。

重要

您无法修改多可用区数据库集群中的数据库实例。所有修改都必须在数据库集群级别完成。您可以对多可用区数据库集群中的数据库实例执行的唯一操作是重启它。

您可以使用 Amazon Web Services Management Console、Amazon CLI 或 RDS API 修改多可用区数据库集群。

要修改多可用区数据库集群
  1. 登录 Amazon Web Services Management Console 并通过以下网址打开 Amazon RDS 控制台:https://console.aws.amazon.com/rds/

  2. 在导航窗格中,选择 Databases(数据库),然后选择要修改的多可用区数据库集群。

  3. 选择修改。此时会显示修改数据库集群页面。

  4. 根据需要更改任意设置。有关每项设置的信息,请参阅 修改多可用区数据库集群的设置

  5. 当所有更改都达到您的要求时,选择继续并查看修改摘要。

  6. (可选)选择立即应用以立即应用更改。选择此选项在某些情况下可能导致停机。有关更多信息,请参阅 立即应用更改

  7. 在确认页面上,检查您的更改。如果更改正确无误,请选择 Modify DB cluster(修改数据库集群)以保存更改。

    也可以选择 Back (返回) 编辑您的更改,或选择 Cancel (取消) 取消更改。

要使用 Amazon CLI 修改多可用区数据库集群,请调用 modify-db-cluster 命令。指定数据库集群标识符以及要修改的选项值。有关各选项的信息,请参阅修改多可用区数据库集群的设置

以下代码修改 my-multi-az-dbcluster,将备份保留期设置为 1 周 (7 天)。该代码使用 --deletion-protection 启用删除保护。要关闭删除保护,请使用 --no-deletion-protection。将在下一维护时段使用 --no-apply-immediately 应用这些更改。使用 --apply-immediately 可立即应用更改。有关更多信息,请参阅 立即应用更改

对于 Linux、macOS 或 Unix:

aws rds modify-db-cluster \ --db-cluster-identifier my-multi-az-dbcluster \ --backup-retention-period 7 \ --deletion-protection \ --no-apply-immediately

对于 Windows:

aws rds modify-db-cluster ^ --db-cluster-identifier my-multi-az-dbcluster ^ --backup-retention-period 7 ^ --deletion-protection ^ --no-apply-immediately

要使用 Amazon RDS API 修改多可用区数据库集群,请调用 ModifyDBCluster 操作。指定数据库集群标识符,以及您要修改的设置参数。有关每个参数的信息,请参阅修改多可用区数据库集群的设置

立即应用更改

修改多可用区数据库集群后,您可立即应用更改。要立即应用更改,请选中 Amazon Web Services Management Console中的立即应用选项。或者,您可以在调用 Amazon CLI 时使用 --apply-immediately 选项,或在使用 Amazon RDS API 时将 ApplyImmediately 参数设置为 true

如果您没有选择立即应用更改,更改将被放置在等待修改队列中。队列中的所有等待更改都将在下一维护时段应用。如果您选择立即应用更改,将应用您的新更改以及等待修改队列中的所有更改。

重要

如果任何待处理修改需要数据库集群暂时不可用(停机),则选择立即应用选项可能会导致意外停机。

当您选择立即应用更改时,任何待定修改也将立即应用,而不是在下一个维护时段内应用。

如果您不想将待定更改应用到下一个维护时段,您可以修改数据库实例来恢复更改。您可以通过使用 Amazon CLI 和指定 --apply-immediately 选项来执行此操作。

一些数据库设置的更改会立即应用,即使您选择延迟更改也是如此。要查看不同数据库的设置如何与“立即应用”设置进行交互,请参阅修改多可用区数据库集群的设置

修改多可用区数据库集群的设置

有关可用于修改多可用区数据库集群的设置的详细信息,请参见下表。有关 Amazon CLI 选项的更多信息,请参阅 modify-db-cluster。有关 RDS API 参数的更多信息,请参阅 ModifyDBCluster

控制台设置 设置说明 CLI 选项和 RDS API 参数 发生更改时 停机说明

分配的存储空间

为数据库集群中的每个数据库实例分配的存储量(以 GiB 为单位)。有关更多信息,请参阅 Amazon RDS 数据库实例存储

CLI 选项:

--allocated-storage

RDS API 参数:

AllocatedStorage

如果您选择立即应用更改,则更改立即生效。

如果您不选择立即应用更改,则更改会在下一个维护时段中生效。

在此更改期间,不会出现停机。

自动次要版本升级

请选择 Enable auto minor version upgrade(启用自动次要版本升级),以使数据库集群能够在首选次要数据库引擎版本升级可用时自动接收这些升级。Amazon RDS 在维护时段内执行自动次要版本升级。

CLI 选项:

--auto-minor-version-upgrade

--no-auto-minor-version-upgrade

RDS API 参数:

AutoMinorVersionUpgrade

更改立即发生。此设置忽略立即应用设置。

在此更改期间发生停机。

备份保留期

您希望数据库集群自动备份的保留天数。对于任何重要的数据库集群,请将该值设置为 1 或更大。

有关更多信息,请参阅 备份简介

CLI 选项:

--backup-retention-period

RDS API 参数:

BackupRetentionPeriod

如果您选择立即应用更改,则更改立即生效。

如果不选择立即应用更改,并且您将该设置从一个非零值更改为另一个非零值,则会尽快异步应用更改。否则,更改在下一维护时段内生效。

如果从 0 改为非零值或从非零值改为 0,则会发生停机。

备份时段

Amazon RDS 自动备份数据库集群的时间段。除非您知道需要何时进行数据库备份,否则,请使用 No preference(无首选项)的默认设置。

有关更多信息,请参阅“备份简介”。

CLI 选项:

--preferred-backup-window

RDS API 参数:

PreferredBackupWindow

更改会尽快异步应用。

在此更改期间,不会停机。

证书颁发机构

数据库集群使用的服务器证书的证书颁发机构(CA)。

有关更多信息,请参阅 使用 SSL/TLS 加密与数据库实例或集群的连接

CLI 选项:

--ca-certificate-identifier

RDS API 参数:

CACertificateIdentifier

如果您选择立即应用更改,则更改立即生效。

如果您不选择立即应用更改,则更改会在下一个维护时段中生效。

仅当数据库引擎不支持在不重新启动的情况下轮换时,才会发生停机。您可以使用 describe-db-engine-versions Amazon CLI 命令来确定数据库引擎是否支持在不重新启动的情况下轮换。
将标签复制到快照

在创建快照时,该选项将任何数据库集群标签复制到数据库快照中。

有关更多信息,请参阅 为 Amazon RDS 资源添加标签

CLI 选项:

-copy-tags-to-snapshot

-no-copy-tags-to-snapshot

RDS API 参数:

CopyTagsToSnapshot

更改立即发生。此设置忽略“立即应用”设置。

在此更改期间,不会停机。

数据库身份验证

对于多可用区数据库集群,仅支持 Password authentication(密码身份验证)。

无,因为密码身份验证是原定设置。

如果您选择立即应用更改,则更改立即生效。

如果您不选择立即应用更改,则更改会在下一个维护时段中生效。

在此更改期间,不会出现停机。

数据库集群标识符

数据库集群标识符。此值以一个小写字符串存储。

更改数据库集群标识符后,数据库集群端点发生变化。数据库集群中的数据库实例的标识符和端点也会发生变化。新的数据库集群名称必须是唯一的。最大长度为 63 个字符。

数据库集群中的数据库实例的名称将更改为与数据库集群的新名称相对应。新的数据库实例名称不能与现有数据库实例的名称相同。例如,如果您将数据库集群名称更改为 maz,则数据库实例名称可能会更改为 maz-instance-1。在这种情况下,不能存在名为 maz-instance-1 的现有数据库实例。

有关更多信息,请参阅 重命名 Amazon RDS 的多可用区数据库集群

CLI 选项:

--new-db-cluster-identifier

RDS API 参数:

NewDBClusterIdentifier

如果您选择立即应用更改,则更改立即生效。

如果您不选择立即应用更改,则更改会在下一个维护时段中生效。

在此更改期间,不会出现停机。

DB cluster instance class(数据库集群实例类)

多可用区数据库集群中各数据库实例(例如 db.r6gd.xlarge)的计算和内存容量。

如有可能,请选择足够大的数据库实例类以便典型查询工作集能够保留在内存中。如果在内存中保留工作集,系统可以避免写入到磁盘,从而提高性能。

有关更多信息,请参阅 多可用区数据库集群的实例类可用性

CLI 选项:

--db-cluster-instance-class

RDS API 参数:

DBClusterInstanceClass

如果您选择立即应用更改,则更改立即生效。

如果您不选择立即应用更改,则更改会在下一个维护时段中生效。

在此更改期间发生停机。

数据库集群参数组

要与数据库集群关联的数据库集群参数组。

有关更多信息,请参阅 多可用区数据库集群的参数组

CLI 选项:

--db-cluster-parameter-group-name

RDS API 参数:

DBClusterParameterGroupName

参数组更改会立即发生。

在此更改期间,不会停机。当您更改参数组时,对某些参数的更改将立即应用于多可用区数据库集群中的数据库实例,而无需重新启动。而对其他一些参数进行的更改,只有在重新启动数据库实例之后才会应用。

数据库引擎版本

要使用的数据库引擎的版本。

CLI 选项:

--engine-version

RDS API 参数:

EngineVersion

如果您选择立即应用更改,则更改立即生效。

如果您不选择立即应用更改,则更改会在下一个维护时段中生效。

在此更改期间发生停机。

删除保护

启用删除保护以禁止删除数据库集群。

有关更多信息,请参阅 删除数据库实例

CLI 选项:

--deletion-protection

--no-deletion-protection

RDS API 参数:

DeletionProtection

更改立即发生。此设置忽略“立即应用”设置。

在此更改期间,不会停机。

维护窗口

30 分钟时段,在这段时间内,将会应用对数据库集群的待处理修改。如果该时段无关紧要,请选择 No preference(无首选项)。

有关更多信息,请参阅“Amazon RDS 维护时段”。

CLI 选项:

--preferred-maintenance-window

RDS API 参数:

PreferredMaintenanceWindow

更改立即发生。此设置忽略“立即应用”设置。

如果有一个或多个待处理的操作导致停机,并且维护时段经过更改,加入了当前时间,则立即应用这些待处理的操作并会出现停机。

在 Amazon Secrets Manager 中管理主凭证

选择在 Amazon Secrets Manager 中管理主凭证,以在 Secrets Manager 的密钥中管理主用户密码。

(可选)选择用于保护密钥的 KMS 密钥。请从您的账户的 KMS 密钥中进行选择,或输入来自其他账户的密钥。

如果 RDS 已在管理数据库集群的主用户密码,则可以通过选择 Rotate secret immediately(立即轮换密钥)来轮换主用户密码。

有关更多信息,请参阅 使用 Amazon RDS 和 Amazon Secrets Manager 管理密码

CLI 选项:

--manage-master-user-password | --no-manage-master-user-password

--master-user-secret-kms-key-id

--rotate-master-user-password | --no-rotate-master-user-password

RDS API 参数:

ManageMasterUserPassword

MasterUserSecretKmsKeyId

RotateMasterUserPassword

如果您开启或关闭自动主用户密码管理,则更改会立即发生。此更改忽略立即应用设置。

如果要轮换主用户密码,则必须指定立即应用更改。

在此更改期间,不会停机。

新建主密码

您的主用户账户密码。

CLI 选项:

--master-user-password

RDS API 参数:

MasterUserPassword

更改会尽快异步应用。此设置忽略“立即应用”设置。

在此更改期间,不会停机。

预置 IOPS

最初为数据库集群分配的预置 IOPS(每秒输入/输出操作数)量。

CLI 选项:

--iops

RDS API 参数:

Iops

如果您选择立即应用更改,则更改立即生效。

如果您不选择立即应用更改,则更改会在下一个维护时段中生效。

在此更改期间,不会出现停机。

公有访问权限

请选择 Publicly accessible(可公开访问)以为数据库集群提供公有 IP 地址,这表示可以在 Virtual Private Cloud (VPC) 外部访问该实例。要可供公开访问,数据库集群还必须在 VPC 的公有子网中。

请选择 Not publicly accessible(不可公开访问)以设置只能从 VPC 内部访问数据库集群。

有关更多信息,请参阅 对互联网隐藏 VPC 中的数据库实例

要从其 VPC 外部连接到数据库集群,该数据库集群必须可公开访问。此外,必须使用数据库集群安全组的入站规则授予访问权限,并且必须满足其他要求。有关更多信息,请参阅 无法连接到 Amazon RDS 数据库实例

如果您的数据库集群不可公开访问,则您可以使用 Amazon Site-to-Site VPN 连接或 Amazon Direct Connect 连接从专用网络访问该实例。有关更多信息,请参阅 互联网络流量隐私保护

修改数据库集群时不可用。

更改立即发生。此设置忽略“立即应用”设置。

在此更改期间,不会停机。

存储类型

数据库集群的存储类型。

仅支持通用型 SSD(gp3)、预调配 IOPS(io1)和预调配 IOPS SSD(io2)存储。

有关更多信息,请参阅 Amazon RDS 存储类型

CLI 选项:

--storage-type

RDS API 参数:

StorageType

如果您选择立即应用更改,则更改立即生效。

如果您不选择立即应用更改,则更改会在下一个维护时段中生效。

在此更改期间,不会出现停机。

VPC 安全组

要与数据库集群关联的安全组。

有关更多信息,请参阅 VPC 安全组概述

CLI 选项:

--vpc-security-group-ids

RDS API 参数:

VpcSecurityGroupIds

更改会尽快异步应用。此设置忽略“立即应用”设置。

在此更改期间,不会停机。

修改多可用区数据库集群时不适用的设置

Amazon CLI 命令 modify-db-cluster 和 RDS API 操作 ModifyDBCluster 中的以下设置不适用于多可用区数据库集群。

您也无法在控制台中为多可用区数据库集群修改这些设置。

Amazon CLI 设置 RDS API 设置

--backtrack-window

BacktrackWindow

--cloudwatch-logs-export-configuration

CloudwatchLogsExportConfiguration

--copy-tags-to-snapshot | --no-copy-tags-to-snapshot

CopyTagsToSnapshot

--db-instance-parameter-group-name

DBInstanceParameterGroupName

--domain

Domain

--domain-iam-role-name

DomainIAMRoleName

--enable-global-write-forwarding | --no-enable-global-write-forwarding

EnableGlobalWriteForwarding

--enable-http-endpoint | --no-enable-http-endpoint

EnableHttpEndpoint

--enable-iam-database-authentication | --no-enable-iam-database-authentication

EnableIAMDatabaseAuthentication

--option-group-name

OptionGroupName

--port

Port

--scaling-configuration

ScalingConfiguration

--storage-type

StorageType