

# 创建 Amazon RDS 的多可用区数据库集群
<a name="create-multi-az-db-cluster"></a>

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

**注意**  
仅 MySQL 和 PostgreSQL 数据库引擎支持多可用区数据库集群。

## 数据库集群先决条件
<a name="create-multi-az-db-cluster-prerequisites"></a>

**重要**  
在创建多可用区数据库集群之前，必须先完成[设置 Amazon RDS 环境](CHAP_SettingUp.md)中的任务。

以下是创建多可用区数据库集群之前需要完成的先决条件。

**Topics**
+ [为数据库集群配置网络](#create-multi-az-db-cluster-prerequisites-VPC)
+ [其他先决条件](#create-multi-az-db-cluster-prerequisites-additional)

### 为数据库集群配置网络
<a name="create-multi-az-db-cluster-prerequisites-VPC"></a>

您只能在虚拟私有云（VPC）中基于 Amazon VPC 服务创建多可用区数据库集群。它必须位于至少有三个可用区的 AWS 区域 中。为数据库集群选择的数据库子网组必须包含至少三个可用区。此配置可确保数据库集群中的每个数据库实例都位于不同的可用区。

要在同一 VPC 中的新数据库集群和 Amazon EC2 实例之间设置连接，可以在创建数据库集群时执行此操作。要从同一 VPC 中的 EC2 实例以外的资源连接到数据库集群，请手动配置网络连接。

**Topics**
+ [配置与 EC2 实例的自动网络连接](#create-multi-az-db-cluster-prerequisites-VPC-automatic)
+ [手动配置网络](#create-multi-az-db-cluster-prerequisites-VPC-manual)

#### 配置与 EC2 实例的自动网络连接
<a name="create-multi-az-db-cluster-prerequisites-VPC-automatic"></a>

创建多可用区数据库集群时，可以使用 AWS 管理控制台 在 EC2 实例和新数据库集群之间设置连接。当您这样做时，RDS 会自动配置您的 VPC 和网络设置。数据库集群在与 EC2 实例相同的 VPC 中创建，以便 EC2 实例可以访问数据库集群。

以下是将 EC2 实例与数据库集群连接的要求：
+ 在创建数据库集群之前，EC2 实例必须存在于 AWS 区域中。

  如果 AWS 区域中不存在任何 EC2 实例，控制台将提供创建一个此类实例的链接。
+ 创建数据库集群的用户必须具有执行以下操作的权限：
  + `ec2:AssociateRouteTable` 
  + `ec2:AuthorizeSecurityGroupEgress` 
  + `ec2:AuthorizeSecurityGroupIngress` 
  + `ec2:CreateRouteTable` 
  + `ec2:CreateSubnet` 
  + `ec2:CreateSecurityGroup` 
  + `ec2:DescribeInstances` 
  + `ec2:DescribeNetworkInterfaces` 
  + `ec2:DescribeRouteTables` 
  + `ec2:DescribeSecurityGroups` 
  + `ec2:DescribeSubnets` 
  + `ec2:ModifyNetworkInterfaceAttribute` 
  + `ec2:RevokeSecurityGroupEgress` 

使用此选项创建私有数据库集群。数据库集群使用仅包含私有子网的数据库子网组，来限制对 VPC 内资源的访问。

要将 EC2 实例连接到数据库集群，请在 **Create database**（创建数据库）页面上的 **Connectivity**（连接）部分，选择 **Connect to an EC2 compute resource**（连接到 EC2 计算资源）。

![\[连接 EC2 实例\]](http://docs.aws.amazon.com/zh_cn/AmazonRDS/latest/UserGuide/images/ec2-set-up-connection-create.png)


当您选择 **Connect to an EC2 compute resource**（连接到 EC2 计算资源）时，RDS 会自动设置以下选项。除非您通过选择 **Don't connect to an EC2 compute resource**（不要连接到 EC2 计算资源）来选择不与 EC2 实例建立连接，否则您无法更改这些设置。


****  

| 控制台选项 | 自动设置 | 
| --- | --- | 
|  **虚拟私有云（VPC）**。  |  RDS 将 VPC 设置为与 EC2 实例关联的 VPC。  | 
|  **DB subnet group**（数据库子网组）  | RDS 要求在与 EC2 实例相同的可用区中具有带私有子网的数据库子网组。如果存在符合此要求的数据库子网组，则 RDS 将使用现有的数据库子网组。默认情况下，此选项设置为 Automatic setup（自动设置）。当您选择 **Automatic setup**（自动设置）但没有满足此要求的数据库子网组时，将执行以下操作。RDS 在三个可用区中使用三个可用的私有子网，其中一个可用区与 EC2 实例相同。如果私有子网在可用区中不可用，则 RDS 会在可用区中创建私有子网。然后，RDS 创建数据库子网组。当私有子网可用时，RDS 使用与该子网关联的路由表，并将它创建的任何子网添加到该路由表中。当没有可用的私有子网时，RDS 会创建一个没有互联网网关访问权限的路由表，并将它创建的子网添加到该路由表中。RDS 还允许您使用现有的数据库子网组。如果您想使用您选择的现有数据库子网组，请选择 **Choose existing**（选择现有）。 | 
|  **公有访问权限**  |  RDS 选择 **No**（否），以使数据库集群不可供公开访问。 出于安全考虑，最好实践是保持数据库为私有，并确保不能从互联网访问数据库。  | 
|  **VPC security group (firewall) [VPC 安全组（防火墙）**]  |  RDS 创建与数据库集群关联的新安全组。安全组命名为 `rds-ec2-n`，其中 `n` 是一个数值。该安全组包含一条以 EC2 VPC 安全组（防火墙）作为源的入站规则。这个与数据库集群关联的安全组允许 EC2 实例访问数据库集群。 RDS 还会创建一个与 EC2 实例关联的新安全组。安全组命名为 `ec2-rds-n`，其中 `n` 是一个数值。该安全组包含一条以数据库集群的 VPC 安全组作为源的出站规则。该安全组允许 EC2 实例向数据库集群发送流量。 您可以通过选择 **Create new**（新建）并键入新安全组的名称，添加另一个新安全组。 您可以通过选择 **Choose existing**（选择现有）并选择要添加的安全组，添加现有安全组。  | 
|  **可用区**  |  RDS 在多可用区数据库集群部署中为一个数据库实例选择 EC2 实例的可用区。RDS 为其他两个数据库实例随机选择不同的可用区。写入器数据库实例在与 EC2 实例相同的可用区中创建。如果发生失效转移且写入器数据库实例位于不同的可用区，则可能会产生跨可用区成本。  | 

有关这些设置的更多信息，请参阅 [创建多可用区数据库集群的设置](#create-multi-az-db-cluster-settings)。

如果您在创建数据库集群后更改这些设置，则这些更改可能会影响 EC2 实例与数据库集群之间的连接。

#### 手动配置网络
<a name="create-multi-az-db-cluster-prerequisites-VPC-manual"></a>

要从同一 VPC 中的 EC2 实例以外的资源连接到数据库集群，请手动配置网络连接。如果您使用 AWS 管理控制台 创建多可用区数据库集群，您可以让 Amazon RDS 自动为您创建 VPC。或者，您也可以使用现有 VPC 或为您的多可用区数据库集群创建新的 VPC。要在多可用区数据库集群中使用您的 VPC，该 VPC 必须最少在三个可用区中均拥有一个子网。有关 VPC 的信息，请参阅 [Amazon VPC 和 Amazon RDS](USER_VPC.md)。

如果您没有默认 VPC 或尚未创建 VPC，并且您不打算使用控制台，请执行以下操作：
+ 在要部署数据库集群的 AWS 区域中，创建最少在三个可用区中均至少有一个子网的 VPC。有关更多信息，请参阅 [在 VPC 中使用数据库实例](USER_VPC.WorkingWithRDSInstanceinaVPC.md#Overview.RDSVPC.Create)。
+ 指定授权与您的 数据库集群的连接的 VPC 安全组。有关更多信息，请参阅[通过创建安全组提供对 VPC 中的数据库实例的访问](CHAP_SettingUp.md#CHAP_SettingUp.SecurityGroup)和[使用安全组控制访问权限](Overview.RDSSecurityGroups.md)。
+ 指定 RDS 数据库子网组，该子网组在 VPC 中定义至少三个可由多可用区数据库集群使用的子网。有关更多信息，请参阅 [使用数据库子网组](USER_VPC.WorkingWithRDSInstanceinaVPC.md#USER_VPC.Subnets)。

有关适用于多可用区数据库集群的限制的信息，请参阅[Amazon RDS 的多可用区数据库集群的限制](multi-az-db-clusters-concepts.Limitations.md)。

如果您想连接到与多可用区数据库集群不在同一 VPC 中的资源，请参阅 [在 VPC 中访问数据库实例的场景](USER_VPC.Scenarios.md) 中的相应方案。

### 其他先决条件
<a name="create-multi-az-db-cluster-prerequisites-additional"></a>

在创建多可用区数据库集群前，请考虑以下附加先决条件：
+ 要定制您的数据库集群的配置参数，请通过必需的参数设置来指定数据库集群参数组。有关创建或修改数据库集群参数组的信息，请参阅[多可用区数据库集群的参数组](multi-az-db-clusters-concepts.md#multi-az-db-clusters-concepts-parameter-groups)。
+ 请确定要为数据库集群指定的 TCP/IP 端口号。有些公司的防火墙将会阻止通往这些默认端口的连接。如果您的公司防火墙阻止默认端口，请为数据库集群选择其他端口。数据库集群中的所有数据库实例均使用相同的端口。
+ 如果数据库的主引擎版本已到 RDS 标准支持终止日期，则必须使用 扩展支持CLI 选项或 RDS API 参数。有关更多信息，请参阅[创建多可用区数据库集群的设置](#create-multi-az-db-cluster-settings)中的 RDS 扩展支持。

## 创建数据库集群
<a name="create-multi-az-db-cluster-creating"></a>

您可以使用 AWS 管理控制台、AWS CLI 或 RDS API 创建多可用区数据库集群。

### 控制台
<a name="create-multi-az-db-cluster-creating-console"></a>

您可以通过选择 **Availability and durability**（可用性与持久性）部分中的 **Multi-AZ DB cluster**（多可用区数据库集群）来创建多可用区数据库集群。

**要使用控制台创建多可用区数据库集群**

1. 登录 AWS 管理控制台 并通过以下网址打开 Amazon RDS 控制台：[https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)。

1. 在 AWS 管理控制台 的右上角，选择要在其中创建数据库集群的 AWS 区域。

   有关支持多可用区数据库集群的 AWS 区域的更多信息，请参阅[Amazon RDS 的多可用区数据库集群的限制](multi-az-db-clusters-concepts.Limitations.md)。

1. 在导航窗格中，选择 **Databases (数据库)**。

1. 选择**创建数据库**。

   要创建多可用区数据库集群，请确保已选择 **Standard Create**（标准创建）并未选择 **Easy Create**（轻松创建）。

1. 在 **Engine type**（引擎类型）中，请选择 **MySQL** 或 **PostgreSQL**。

1. 对于 **Version**（版本），请选择数据库引擎版本。

   有关支持多可用区数据库集群的数据库引擎版本的信息，请参阅[Amazon RDS 的多可用区数据库集群的限制](multi-az-db-clusters-concepts.Limitations.md)。

1. 在 **Templates**（模板）中，请为您的部署选择适当的模板。

1. 在 **Availability and durability**（可用性与持久性）中，选择 **Multi-AZ DB cluster**（多可用区数据库集群）。  
![\[多可用区数据库集群选择\]](http://docs.aws.amazon.com/zh_cn/AmazonRDS/latest/UserGuide/images/multi-az-db-cluster-create.png)

1. 在 **DB cluster identifier**（数据库集群标识符）中，请输入数据库集群的标识符。

1. 在 **Master username**（主用户名）中，请输入您的主用户名，或者保持默认设置。

1. 请输入您的主密码：

   1. 在**设置**部分中，打开**凭证设置**。

   1. 如果要指定密码，请取消勾选已选择的 **Auto generate a password**（自动生成密码）复选框。

   1. （可选）更改 **Master username**（主用户名）的值。

   1. 请在 **Master password**（主密码）和 **Confirm password**（确认密码）中输入相同的密码。

1. 对于**数据库实例类**，请选择数据库实例类。有关支持的数据库实例类的列表，请参阅[多可用区数据库集群的实例类可用性](multi-az-db-clusters-concepts.md#multi-az-db-clusters-concepts.InstanceAvailability)。

1. （可选）为该数据库集群设置与计算资源的连接。

   在创建数据库集群期间，您可以配置 Amazon EC2 实例和新数据库集群之间的连接。有关更多信息，请参阅 [配置与 EC2 实例的自动网络连接](#create-multi-az-db-cluster-prerequisites-VPC-automatic)。

1. 在**连接**部分的 **VPC 安全组（防火墙）**下，如果您选择**新建**，则会创建一个 VPC 安全组，其入站规则允许本地计算机的 IP 地址访问该数据库。

1. 对于其余部分，请指定数据库集群设置。有关每项设置的信息，请参阅 [创建多可用区数据库集群的设置](#create-multi-az-db-cluster-settings)。

1. 选择**创建数据库**。

   如果选择使用自动生成的密码，则**数据库**页面上将显示**查看凭证详细信息**按钮。

   要查看数据库集群的主用户名和密码，请选择**查看凭证详细信息**。

   要以主用户身份连接到数据库集群，请使用显示的用户名和密码。
**重要**  
您无法再次查看主用户密码。

1. 对于 **Databases**（数据库），请选择新数据库集群的名称。

在 RDS 控制台上，将显示新数据库集群的详细信息。在此数据库集群完成创建、可供使用之前，此数据库集群的状态将为 **Creating**（正在创建）。当状态变为 **Available**（可用）时，您便可以连接到该数据库集群。根据所分配的数据库集群类和存储的不同，新数据库集群可能需要数分钟时间才可用。

### AWS CLI
<a name="create-multi-az-db-cluster-creating-cli"></a>

在使用 AWS CLI 创建多可用区数据库集群之前，确保满足所需的先决条件。其中包括创建 VPC 和 RDS 数据库子网组。有关更多信息，请参阅 [数据库集群先决条件](#create-multi-az-db-cluster-prerequisites)。

要使用 AWS CLI 创建多可用区数据库集群，请调用 [create-db-cluster](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-cluster.html) 命令。请指定 `--db-cluster-identifier`。对于 `--engine` 选项，请指定 `mysql` 或 `postgres`。

有关各选项的信息，请参阅 [创建多可用区数据库集群的设置](#create-multi-az-db-cluster-settings)。

有关支持多可用区数据库集群的 AWS 区域、数据库引擎和数据库引擎版本的信息，请参阅[Amazon RDS 的多可用区数据库集群的限制](multi-az-db-clusters-concepts.Limitations.md)。

`create-db-cluster` 命令将为您的数据库集群创建写入器数据库实例，以及两个读取器数据库实例。每个数据库实例都位于不同的可用区。

例如，以下命令将创建一个名为 `mysql-multi-az-db-cluster` 的 MySQL 8.0 多可用区数据库集群。

**Example**  
对于 Linux、macOS 或 Unix：  

```
 1. aws rds create-db-cluster \
 2.    --db-cluster-identifier mysql-multi-az-db-cluster \
 3.    --engine mysql \
 4.    --engine-version 8.0.32  \
 5.    --master-username admin \
 6.    --manage-master-user-password  \
 7.    --port 3306 \
 8.    --backup-retention-period 1  \
 9.    --db-subnet-group-name default \
10.    --allocated-storage 4000 \
11.    --storage-type io1 \
12.    --iops 10000 \
13.    --db-cluster-instance-class db.m5d.xlarge
```
对于：Windows  

```
 1. aws rds create-db-cluster ^
 2.    --db-cluster-identifier mysql-multi-az-db-cluster ^
 3.    --engine mysql ^
 4.    --engine-version 8.0.32 ^
 5.    --manage-master-user-password ^
 6.    --master-username admin ^
 7.    --port 3306 ^
 8.    --backup-retention-period 1 ^
 9.    --db-subnet-group-name default ^
10.    --allocated-storage 4000 ^
11.    --storage-type io1 ^
12.    --iops 10000 ^
13.    --db-cluster-instance-class db.m5d.xlarge
```

以下命令将创建一个名为 `postgresql-multi-az-db-cluster` 的 PostgreSQL 13.4 多可用区数据库集群。

**Example**  
对于 Linux、macOS 或 Unix：  

```
 1. aws rds create-db-cluster \
 2.    --db-cluster-identifier postgresql-multi-az-db-cluster \
 3.    --engine postgres \
 4.    --engine-version 13.4 \
 5.    --manage-master-user-password \
 6.    --master-username postgres \
 7.    --port 5432 \
 8.    --backup-retention-period 1  \
 9.    --db-subnet-group-name default \
10.    --allocated-storage 4000 \
11.    --storage-type io1 \
12.    --iops 10000 \
13.    --db-cluster-instance-class db.m5d.xlarge
```
对于：Windows  

```
 1. aws rds create-db-cluster ^
 2.    --db-cluster-identifier postgresql-multi-az-db-cluster ^
 3.    --engine postgres ^
 4.    --engine-version 13.4 ^
 5.    --manage-master-user-password ^
 6.    --master-username postgres ^
 7.    --port 5432 ^
 8.    --backup-retention-period 1 ^
 9.    --db-subnet-group-name default ^
10.    --allocated-storage 4000 ^
11.    --storage-type io1 ^
12.    --iops 10000 ^
13.    --db-cluster-instance-class db.m5d.xlarge
```

### RDS API
<a name="create-multi-az-db-cluster-creating-api"></a>

在使用 RDS API 创建多可用区数据库集群之前，您必须满足所需的先决条件，例如创建 VPC 和 RDS 数据库子网组。有关更多信息，请参阅 [数据库集群先决条件](#create-multi-az-db-cluster-prerequisites)。

要使用 RDS API 创建多可用区数据库集群，请调用 [CreateDBCluster](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBCluster.html) 操作。请指定 `DBClusterIdentifier`。对于 `Engine` 参数，请指定 `mysql` 或 `postgresql`。

有关各选项的信息，请参阅 [创建多可用区数据库集群的设置](#create-multi-az-db-cluster-settings)。

`CreateDBCluster` 操作将为您的数据库集群创建写入器数据库实例，以及两个读取器数据库实例。每个数据库实例都位于不同的可用区。

## 创建多可用区数据库集群的设置
<a name="create-multi-az-db-cluster-settings"></a>

有关创建多可用区数据库集群时所选设置的详细信息，请参阅下表。有关 AWS CLI 选项的更多信息，请参阅 [create-db-cluster](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-cluster.html)。有关 RDS API 参数的更多信息，请参阅 [CreateDBCluster](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBCluster.html)。


| 控制台设置 | 设置说明 | CLI 选项和 RDS API 参数 | 
| --- | --- | --- | 
|  **分配的存储空间**  |  为数据库集群中的每个数据库实例分配的存储量（以 GiB 为单位）。有关更多信息，请参阅 [Amazon RDS 数据库实例存储](CHAP_Storage.md)。  |  **CLI 选项：** `--allocated-storage` **API 参数：**  `AllocatedStorage`  | 
| 自动次要版本升级 |  请选择 **Enable auto minor version upgrade**（启用自动次要版本升级），以使数据库集群能够在首选次要数据库引擎版本升级可用时自动接收这些升级。Amazon RDS 在维护时段内执行自动次要版本升级。  |  **CLI 选项：** `--auto-minor-version-upgrade` `--no-auto-minor-version-upgrade` **API 参数：** `AutoMinorVersionUpgrade`  | 
|  备份保留期  |  您希望数据库集群自动备份的保留天数。对于多可用区数据库集群，此值必须设置为 **1** 或更大。 有关更多信息，请参阅 [备份简介](USER_WorkingWithAutomatedBackups.md)。  |  **CLI 选项：** `--backup-retention-period` **API 参数：** `BackupRetentionPeriod`  | 
|  备份时段： |  Amazon RDS 自动备份数据库集群的时间段。除非您知道需要何时进行数据库备份，否则，请使用 **No preference**（无首选项）的默认设置。 有关更多信息，请参阅“[备份简介](USER_WorkingWithAutomatedBackups.md)”。  |  **CLI 选项：** `--preferred-backup-window` **API 参数：** `PreferredBackupWindow`  | 
|  **证书颁发机构**  |  数据库集群使用的服务器证书的证书颁发机构（CA）。 有关更多信息，请参阅 [使用 SSL/TLS 加密与数据库实例或集群的连接](UsingWithRDS.SSL.md)。  |  **CLI 选项：** `--ca-certificate-identifier` **RDS API 参数：** `CACertificateIdentifier`  | 
|  将标签复制到快照  |  在创建快照时，该选项将任何数据库集群标签复制到数据库快照中。 有关更多信息，请参阅 [为 Amazon RDS 资源添加标签](USER_Tagging.md)。  |  **CLI 选项：** `-copy-tags-to-snapshot` `-no-copy-tags-to-snapshot` **RDS API 参数：** `CopyTagsToSnapshot`  | 
|  数据库身份验证  |  您想要使用的数据库身份验证选项。 选择 **Password authentication** 以仅使用数据库密码验证数据库用户的身份。 选择 **Password and IAM DB authentication**（密码和 IAM 数据库身份验证），以通过用户和角色的数据库密码和用户凭证验证数据库用户的身份。有关更多信息，请参阅 [适用于 MariaDB、MySQL 和 PostgreSQL 的IAM 数据库身份验证](UsingWithRDS.IAMDBAuth.md)。  |  **CLI 选项：** `--enable-iam-database-authentication` `--no-enable-iam-database-authentication` **RDS API 参数：** `EnableIAMDatabaseAuthentication`  | 
|  数据库端口： |  要用于访问数据库集群的端口。显示的是默认端口。 创建数据库集群后将无法更改端口。 有些公司的防火墙将会阻止通往这些默认端口的连接。如果您的公司防火墙阻止默认端口，请为数据库集群输入其他端口。  |  **CLI 选项：** `--port` **RDS API 参数：** `Port`  | 
|  数据库集群标识符  |  数据库集群的名称。请使用与命名本地部署服务器相同的方式命名数据库集群。数据库集群标识符最多可以包含 63 个字母数字字符，且必须在所选 AWS 区域中对于您的账户是唯一的。  |  **CLI 选项：** `--db-cluster-identifier` **RDS API 参数：** `DBClusterIdentifier`  | 
|  数据库实例类： |  多可用区数据库集群中各数据库实例（例如 `db.m5d.xlarge`）的计算和内存容量。 如有可能，请选择足够大的数据库实例类以便典型查询工作集能够保留在内存中。如果在内存中保留工作集，系统可以避免写入到磁盘，从而提高性能。 有关支持的数据库实例类的列表，请参阅[多可用区数据库集群的实例类可用性](multi-az-db-clusters-concepts.md#multi-az-db-clusters-concepts.InstanceAvailability)。  |  **CLI 选项：** `--db-cluster-instance-class` **RDS API 参数：** `DBClusterInstanceClass`  | 
|  **数据库集群参数组**  |  要与数据库集群关联的数据库集群参数组。 有关更多信息，请参阅 [多可用区数据库集群的参数组](multi-az-db-clusters-concepts.md#multi-az-db-clusters-concepts-parameter-groups)。  |  **CLI 选项：** `--db-cluster-parameter-group-name` **RDS API 参数：** `DBClusterParameterGroupName`  | 
|  数据库引擎版本  |  要使用的数据库引擎的版本。  |  **CLI 选项：** `--engine-version` **RDS API 参数：** `EngineVersion`  | 
|  数据库集群参数组  |  要与数据库集群关联的数据库实例参数组。 有关更多信息，请参阅 [多可用区数据库集群的参数组](multi-az-db-clusters-concepts.md#multi-az-db-clusters-concepts-parameter-groups)。  |  **CLI 选项：** `--db-cluster-parameter-group-name` **RDS API 参数：** `DBClusterParameterGroupName`  | 
|  数据库子网组： | 要用于数据库集群的数据库子网组。选择 Choose existing（选择现有）以使用现有的数据库子网组。然后，从 Existing DB subnet groups（现有数据库子网组）下拉列表中选择所需的子网组。选择 **Automatic setup**（自动设置），让 RDS 选择兼容的数据库子网组。如果不存在任何子网组，RDS 会为您的集群创建一个新的子网组。有关更多信息，请参阅 [使用数据库子网组](USER_VPC.WorkingWithRDSInstanceinaVPC.md#USER_VPC.Subnets)。 |  **CLI 选项：** `--db-subnet-group-name` **RDS API 参数：** `DBSubnetGroupName`  | 
| 删除保护 |  **启用删除保护**以禁止删除数据库集群。如果使用控制台创建生产数据库集群，预设情况下将开启删除保护。 有关更多信息，请参阅 [删除数据库实例](USER_DeleteInstance.md)。  |  **CLI 选项：** `--deletion-protection` `--no-deletion-protection` **RDS API 参数：** `DeletionProtection`  | 
|  加密  |  请选择 **Enable Encryption**（启用加密）以对该数据库集群开启静态加密。 预设情况下，将对多可用区数据库集群开启加密。 有关更多信息，请参阅 [加密 Amazon RDS 资源](Overview.Encryption.md)。  |  **CLI 选项：** `--kms-key-id` `--storage-encrypted` `--no-storage-encrypted` **RDS API 参数：** `KmsKeyId` `StorageEncrypted`  | 
|  增强监控  |  选择 **Enable enhanced monitoring**（启用增强监控）可为您的数据库集群运行所在的操作系统开启实时指标收集。 有关更多信息，请参阅 [使用增强监控来监控操作系统指标](USER_Monitoring.OS.md)。  |  **CLI 选项：** `--monitoring-interval` `--monitoring-role-arn` **RDS API 参数：** `MonitoringInterval` `MonitoringRoleArn`  | 
|  初始数据库名称： |  数据库集群的数据库名称。如果您未提供名称，Amazon RDS 不会在 MySQL 的数据库集群上创建数据库。但是，它确实会在 PostgreSQL 的数据库集群上创建数据库。名称不能是数据库引擎的保留字。它还有其他约束，具体取决于数据库引擎。 MySQL： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/AmazonRDS/latest/UserGuide/create-multi-az-db-cluster.html) PostgreSQL： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/AmazonRDS/latest/UserGuide/create-multi-az-db-cluster.html)  |  **CLI 选项：** `--database-name` **RDS API 参数：** `DatabaseName`  | 
|  **日志导出**  |  要发布到 Amazon CloudWatch Logs 的数据库日志文件的类型。 有关更多信息，请参阅“[将数据库日志发布到 Amazon CloudWatch Logs](USER_LogAccess.Procedural.UploadtoCloudWatch.md)”。  |  **CLI 选项：** `-enable-cloudwatch-logs-exports` **RDS API 参数：** `EnableCloudwatchLogsExports`  | 
|  维护时段  |  30 分钟时段，在这段时间内，将会应用对数据库集群的待处理修改。如果该时段无关紧要，请选择 **No preference**（无首选项）。 有关更多信息，请参阅“[Amazon RDS 维护时段](USER_UpgradeDBInstance.Maintenance.md#Concepts.DBMaintenance)”。  |  **CLI 选项：** `--preferred-maintenance-window` **RDS API 参数：** `PreferredMaintenanceWindow`  | 
|  在 AWS Secrets Manager 中管理主凭证  |  选择**在 AWS Secrets Manager 中管理主凭证**，以在 Secrets Manager 的密钥中管理主用户密码。 （可选）选择用于保护密钥的 KMS 密钥。请从您的账户的 KMS 密钥中进行选择，或输入来自其他账户的密钥。 有关更多信息，请参阅 [使用 Amazon RDS 和 AWS Secrets Manager 管理密码](rds-secrets-manager.md)。  |  **CLI 选项：** `--manage-master-user-password \| --no-manage-master-user-password` `--master-user-secret-kms-key-id` **RDS API 参数：** `ManageMasterUserPassword` `MasterUserSecretKmsKeyId`  | 
|  主密码： |  您的主用户账户密码。  |  **CLI 选项：** `--master-user-password` **RDS API 参数：** `MasterUserPassword`  | 
|  主用户名 –  |  用作登录数据库集群的主用户名，拥有所有数据库权限。 [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/AmazonRDS/latest/UserGuide/create-multi-az-db-cluster.html) 您无法在创建多可用区数据库集群之后更改主用户名。 有关授予主用户权限的更多信息，请参阅 [主用户账户权限](UsingWithRDS.MasterAccounts.md)。  |  **CLI 选项：** `--master-username` **RDS API 参数：** `MasterUsername`  | 
| 性能详情 |  请选择 **Enable Performance Insights**（启用性能详情）以监控数据库集群负载，以便您可以分析数据库性能和解决数据库性能问题。 选择保留期以确定要保留的性能详情历史记录数量。保留期设置为**默认值（7 天）**。要将性能数据保留更长时间，请指定 1–24 个月。有关保留期的更多信息，请参阅。[性能详情的定价和数据留存](USER_PerfInsights.Overview.cost.md) 选择一个 KMS 密钥以用来保护用于加密该数据库卷的密钥。请从您的账户的 KMS 密钥中进行选择，或输入来自其他账户的密钥。 有关更多信息，请参阅 [在 Amazon RDS 上使用性能详情监控数据库负载](USER_PerfInsights.md)。  |  **CLI 选项：** `--enable-performance-insights` `--no-enable-performance-insights` `--performance-insights-retention-period` `--performance-insights-kms-key-id` **RDS API 参数：** `EnablePerformanceInsights` `PerformanceInsightsRetentionPeriod` `PerformanceInsightsKMSKeyId`  | 
|  预调配 IOPS  |  最初为数据库集群分配的预置 IOPS（每秒输入/输出操作数）量。  |  **CLI 选项：** `--iops` **RDS API 参数：** `Iops`  | 
|  公有访问权限  |  请选择 **Publicly accessible**（可公开访问）以为数据库集群提供公有 IP 地址，这表示可以在 VPC 外部访问该实例。要可供公开访问，数据库集群还必须在 VPC 的公有子网中。 请选择 **Not publicly accessible**（不可公开访问）以设置只能从 VPC 内部访问数据库集群。 有关更多信息，请参阅 [对互联网隐藏 VPC 中的数据库实例](USER_VPC.WorkingWithRDSInstanceinaVPC.md#USER_VPC.Hiding)。 要从其 VPC 外部连接到数据库集群，该数据库集群必须可公开访问。此外，必须使用数据库集群安全组的入站规则授予访问权限，并且必须满足其他要求。有关更多信息，请参阅 [无法连接到 Amazon RDS 数据库实例](CHAP_Troubleshooting.md#CHAP_Troubleshooting.Connecting)。 如果您的数据库集群不可公开访问，则您可以使用 AWS Site-to-Site VPN 连接或 Direct Connect 连接从专用网络访问该实例。有关更多信息，请参阅 [互联网络流量隐私](inter-network-traffic-privacy.md)。  |  **CLI 选项：** `--publicly-accessible` `--no-publicly-accessible` **RDS API 参数：** `PubliclyAccessible`  | 
| RDS 扩展支持 | 选择**启用 RDS Extended Support**，以允许受支持的主要引擎版本在 RDS 标准支持终止日期后继续运行。 当您创建数据库集群时，Amazon RDS 默认使用 RDS 扩展支持。为了防止在 RDS 标准支持终止日期后创建新的数据库集群并避免支付 RDS 扩展支持费用，请禁用此设置。在 RDS 扩展支持定价开始日期之前，您的现有数据库集群不会产生费用。 有关更多信息，请参阅 [Amazon RDS 的 Amazon RDS 扩展支持](extended-support.md)。 |  **CLI 选项：** `--engine-lifecycle-support` **RDS API 参数：** `EngineLifecycleSupport`  | 
|  **Storage throughput（存储吞吐量**  |  数据库集群的存储吞吐量值。仅在您为存储类型选择通用型 SSD（gp3）时，此设置才可见。 此设置不可配置，可根据您指定的 IOPS 自动设置。 有关更多信息，请参阅 [gp3 存储（推荐）](CHAP_Storage.md#gp3-storage)。  |  此值是自动计算的，并且没有 CLI 选项。  | 
|  **RDS Proxy（RDS 代理**  |  选择 **Create an RDS Proxy**（创建 RDS 代理），以便为您的数据库集群创建代理。Amazon RDS 会自动为代理创建 IAM 角色和 Secrets Manager 密钥。  |  创建数据库集群时不可用。  | 
|  存储类型  |  数据库集群的存储类型。 仅支持通用型 SSD（gp3）、预调配 IOPS（io1）和预调配 IOPS SSD（io2）存储。 有关更多信息，请参阅 [Amazon RDS 存储类型](CHAP_Storage.md#Concepts.Storage)。  |  **CLI 选项：** `--storage-type` **RDS API 参数：** `StorageType`  | 
|  虚拟私有云（VPC）。 |  基于要与此数据库集群关联的 Amazon VPC 服务的 VPC。 有关更多信息，请参阅 [Amazon VPC 和 Amazon RDS](USER_VPC.md)。  |  对于 CLI 和 API，您可以指定 VPC 安全组 ID。  | 
|  VPC security group (firewall) [VPC 安全组（防火墙）]  |  要与数据库集群关联的安全组。 有关更多信息，请参阅 [VPC 安全组概述](Overview.RDSSecurityGroups.md#Overview.RDSSecurityGroups.VPCSec)。  |  **CLI 选项：** `--vpc-security-group-ids` **RDS API 参数：** `VpcSecurityGroupIds`  | 

## 创建多可用区数据库集群时不适用的设置
<a name="create-multi-az-db-cluster-settings-not-applicable"></a>

AWS CLI 命令 [https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-cluster.html](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-cluster.html) 和 RDS API 操作 [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBCluster.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBCluster.html) 中的以下设置不适用于多可用区数据库集群。

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


| AWS CLI 设置 | RDS API 设置 | 
| --- | --- | 
|  `--availability-zones`  |  `AvailabilityZones`  | 
|  `--backtrack-window`  |  `BacktrackWindow`  | 
|  `--character-set-name`  |  `CharacterSetName`  | 
|  `--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`  | 
|  `--global-cluster-identifier`  |  `GlobalClusterIdentifier`  | 
|  `--option-group-name`  |  `OptionGroupName`  | 
|  `--pre-signed-url`  |  `PreSignedUrl`  | 
|  `--replication-source-identifier`  |  `ReplicationSourceIdentifier`  | 
|  `--scaling-configuration`  |  `ScalingConfiguration`  | 