Amazon Relational Database Service
用户指南 (API 版本 2014-10-31)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

创建 Amazon Aurora 数据库集群

Amazon Aurora 数据库集群包括一个与 MySQL 或 PostgreSQL 兼容的数据库实例,以及一个集群卷,该集群卷将跨三个可用区复制的数据库集群的数据表示为一个单一虚拟卷。数据库集群包含一个主实例,以及可选的最多 15 个 Aurora 副本。有关 Aurora 数据库集群的更多信息,请参阅 Amazon Aurora 概述

以下主题介绍如何创建 Aurora 数据库集群,然后为该数据库集群添加 Aurora 副本。

重要

必须先完成Amazon RDS 设置一节中的任务,然后才能创建 Aurora 数据库集群。

本主题介绍如何使用 AWS 管理控制台或 AWS CLI 创建 Aurora 数据库集群。有关连接到 Aurora 数据库集群的简单说明,请参阅连接到 Amazon Aurora 数据库集群。有关连接到 Amazon Aurora 数据库集群的详细指南,请参阅 RDS Aurora 连接

数据库集群先决条件

以下是创建数据库集群的先决条件。

VPC

您只能在 Virtual Private Cloud (VPC) 中创建 Amazon Aurora 数据库集群,该集群跨越两个可用区,并且每个可用区必须至少包含一个子网。通过跨至少两个可用区分配您的集群实例,您可以确保数据库集群中有可用的实例,避免出现可用区故障。请注意,Aurora 数据库集群的集群卷将始终跨三个可用区提供持久性存储,数据丢失的可能性很小。

如果您要使用 AWS 管理控制台创建 Aurora 数据库集群,则可让 Amazon RDS 自动为您创建 VPC。或者,您也可以使用现有 VPC 或为 Aurora 数据库集群创建新的 VPC。要在 Amazon Aurora 数据库集群中使用您的 VPC,该 VPC 必须最少在两个可用区中均拥有一个子网。有关更多信息,请参阅 如何创建 VPC 以用于 Amazon Aurora。有关 VPC 的信息,请参阅 Amazon Virtual Private Cloud (VPCs) 和 Amazon RDS

注意

可使用 ClassicLink 与不在 VPC 中的 EC2 实例和 Amazon Aurora 数据库集群进行通信。有关更多信息,请参阅 VPC 中的数据库实例由不在 VPC 中的 EC2 实例访问

如果您没有默认 VPC 或尚未创建 VPC,则可让 Amazon RDS 在您使用 AWS 管理控制台创建 Aurora 数据库集群时自动为您创建 VPC。否则,您必须执行以下操作:

  • 在要部署数据库集群的区域中,创建最少在两个可用区中均至少有一个子网的 VPC。有关更多信息,请参阅 如何创建 VPC 以用于 Amazon Aurora

  • 指定授权与您的 Aurora 数据库集群的连接的 VPC 安全组。有关更多信息,请参阅 在 VPC 中使用数据库实例

  • 指定 RDS 数据库子网组,该子网组在 VPC 中定义至少两个可由 Aurora 数据库集群使用的子网。有关更多信息,请参阅 使用数据库子网组

其他先决条件

  • 如果使用 IAM 凭证连接到 AWS,您的 IAM 账户必须拥有 IAM 政策来授予执行 Amazon RDS 操作所需的权限。有关更多信息,请参阅 Amazon RDS 的身份验证和访问控制

    如果使用 IAM 账户访问 Amazon RDS 控制台,则必须先使用您的 IAM 账户登录到 AWS 管理控制台,然后转至位于 https://console.amazonaws.cn/rds/ 的 Amazon RDS 控制台。

  • 要定制您的数据库集群的配置参数,必须通过必需的参数设置来指定数据库集群参数组和数据库参数组。有关创建或修改数据库集群参数组或数据库参数组的信息,请参阅 使用数据库参数组

  • 您必须确定要为数据库集群指定的 TCP/IP 端口号。有些公司的防火墙不允许连接到 Aurora 的默认端口 (MySQL 为 3306,PostgreSQL 为 5432)。如果您公司的防火墙阻止不允许连接该默认端口,请为您的数据库集群选择其他端口。数据库集群中的所有实例都使用相同端口。

AWS 管理控制台

启动 Aurora 数据库集群

以下过程介绍如何使用 AWS 管理控制台启动 Aurora 数据库集群并创建 Aurora 副本。

使用 AWS 管理控制台启动 Aurora 数据库集群

  1. 登录 AWS 管理控制台 并通过以下网址打开 Amazon RDS 控制台:https://console.amazonaws.cn/rds/

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

  3. 在导航窗格中,选择实例

  4. 选择启动数据库实例以启动“启动数据库实例”向导。此时将打开向导,并显示选择引擎页面。

  5. Select Engine (选择引擎) 页面上,选择 Aurora 的 MySQL 5.6 兼容版本、MySQL 5.7 兼容版本或 PostgreSQL 兼容版本。

     Amazon Aurora 启动数据库实例向导选择引擎
  6. 选择 Next

  7. 指定数据库详细信息页面上,指定数据库实例信息。下表显示数据库实例的设置。

    对于此选项... 请执行该操作

    数据库实例类

    选择定义数据库集群中每个实例的处理和内存要求的数据库实例类。有关数据库实例类的更多信息,请参阅数据库实例类

    多可用区部署

    确定是否要在其他可用区中创建 Aurora 副本以实现故障转移支持。如果您选择 Create Replica in Different Zone,则 Amazon RDS 将在不同可用区的数据库集群中为您创建 Aurora 副本,而不是在数据库集群的主实例中创建。有关多可用区的详细信息,请参阅区域和可用区

    数据库实例标识符

    键入数据库集群中主实例的名称。此标识符将在数据库集群主实例的终端节点地址中使用。

    数据库实例标识符具有以下限制:

    • 它必须包含 1 到 63 个字母数字字符或连字符。

    • 它的第一个字符必须是字母。

    • 它不能以连字符结束或包含两个连续连字符。

    • 它对于每个 AWS 区域的每个 AWS 账户的所有数据库实例必须是唯一的。

    主用户名

    使用字母数字字符键入一个名称,该名称将用作您登录数据库集群的主用户名。

    主密码

    键入一个包含 8 到 41 位可打印 ASCII 字符 (的密码用不包括 /、"、和 @) 用作您的主用户密码。

    典型的指定数据库详细信息页面类似如下所示。

     Amazon Aurora 启动数据库实例向导数据库实例详细信息
  8. 确认您的主密码并选择 Next

  9. 配置高级设置页面上,您可以自定义 Aurora 数据库集群的其他设置。下表显示数据库集群的高级设置。

    对于此选项... 请执行该操作

    Virtual Private Cloud (VPC)

    选择将托管数据库集群的 VPC。选择 Create a New VPC 以让 Amazon RDS 为您创建 VPC。有关更多信息,请参阅本主题前面的数据库集群先决条件

    子网组

    选择要用于数据库集群的数据库子网组。 有关更多信息,请参阅本主题前面的数据库集群先决条件

    公开可用性

    选择 Yes 可向数据库集群提供公有 IP 地址;否则,请选择 No。数据库集群可以混合使用公有和私有数据库实例。有关隐藏实例以防止公开访问的更多信息,请参阅从 Internet 隐藏 VPC 中的数据库实例

    可用区

    确定您是否希望指定特定的可用区。有关可用区的更多信息,请参阅区域和可用区

    VPC 安全组

    选择新建 VPC 安全组以让 Amazon RDS 为您创建 VPC 安全组。或者,选择选择现有的 VPC 安全组,并指定一个或多个 VPC 安全组以保护对数据库集群的网络访问。有关更多信息,请参阅本主题前面的数据库集群先决条件

    DB Cluster Identifier

    为数据库集群键入一个名称,该名称在您选择的区域中对于您的账户是唯一的。此标识符将在数据库集群的集群终端节点地址中使用。有关集群终端节点的信息,请参阅 Aurora 终端节点

    数据库集群标识符具有以下限制:

    • 它必须包含 1 到 63 个字母数字字符或连字符。

    • 它的第一个字符必须是字母。

    • 它不能以连字符结束或包含两个连续连字符。

    • 它对于每个区域的每个 AWS 账户的所有数据库集群必须是唯一的。

    数据库名称

    为您的默认数据库键入一个包含多达 64 位字母数字字符的名称。如果您未提供名称,Amazon RDS 将不会在您创建的数据库集群上创建数据库。

    要创建其他数据库,请连接到数据库集群并使用 SQL 命令 CREATE DATABASE。有关连接到数据库集群的更多信息,请参阅连接到 Amazon Aurora 数据库集群

    数据库端口

    指定应用程序和实用程序用来访问数据库的端口。Aurora MySQL 数据库集群默认为使用默认的 MySQL 端口 3306;Aurora PostgreSQL 数据库集群默认为使用默认的 PostgreSQL 端口 5432。有些公司的防火墙不允许连接到这些默认端口。如果您公司的防火墙不允许连接默认端口,请为新数据库集群选择其他端口。

    数据库参数组

    选择参数组。Aurora 具有一个可使用的默认参数组,或者您也可以创建自己的参数组。有关参数组的更多信息,请参阅 使用数据库参数组

    数据库集群参数组

    选择数据库集群参数组。Aurora 具有一个可使用的默认数据库集群参数组,您也可以创建自己的数据库集群参数组。有关数据库集群参数组的更多信息,请参阅 使用数据库参数组

    选项组

    选择选项组。Aurora 具有一个可使用的默认选项组,或者您也可以创建自己的选项组。有关选项组的更多信息,请参阅 使用选项组

    复制标签给快照

    仅适用于 Aurora PostgreSQL。选择该项可指定为此数据库实例定义的标签将复制到从此数据库实例创建的数据库快照。有关更多信息,请参阅 标记 Amazon RDS 资源

    IAM 数据库身份验证

    仅适用于 Aurora MySQL。选择启用 IAM 数据库身份验证以启用 IAM 数据库身份验证。有关更多信息,请参阅 对 MySQL 和 Amazon Aurora 使用 IAM 数据库身份验证

    加密

    选择 Enable encryption 可对此数据库集群启用静态加密。有关更多信息,请参阅 加密 Amazon RDS 资源

    主密钥

    仅当加密设置为启用加密时可用。选择用于加密此数据库集群的主密钥。有关更多信息,请参阅 加密 Amazon RDS 资源

    优先级

    选择实例的故障转移优先级。如果您未选择值,则默认值为 tier-1。此优先级决定从主实例故障恢复时提升 Aurora 副本的顺序。有关更多信息,请参阅 Aurora 数据库集群的容错能力

    回溯

    仅适用于 Aurora MySQL。选择启用回溯可启用回溯,选择禁用回溯可禁用回溯。使用回溯可以将数据库集群倒回到特定时间,而无需创建新的数据库集群。默认情况下它是禁用的。如果启用回溯,则还可以指定希望能够回溯您的数据库集群的时间量 (目标回溯时段)。有关更多信息,请参阅 回溯 Aurora 数据库集群

    备份保留期

    选择 Aurora 将保留数据库的备份副本的时间长度 (1 到 35 天)。可使用备份副本对数据库执行时间点还原 (PITR),以还原到第二个时间点。

    增强监测

    选择启用增强监测可启用您的数据库集群在其上运行的操作系统的实时指标收集。有关更多信息,请参阅 增强监测

    Monitoring Role

    仅当增强监测设置为启用增强监测时可用。选择您创建的 IAM 角色以允许 Amazon RDS 代表您与 Amazon CloudWatch Logs 通信,或选择 Default 让 RDS 为您创建一个名为 rds-monitoring-role 的角色。有关更多信息,请参阅 增强监测

    粒度

    仅当增强监测设置为启用增强监测时可用。设置为数据库集群收集指标的时间之间的间隔 (以秒为单位)。

    自动次要版本升级

    如果您希望在次要 MySQL 数据库引擎版本升级可用时,让 Aurora 数据库集群自动接收这些升级,请选择启用自动次要版本升级

    自动次要版本升级选项仅适用于升级到 Amazon Aurora 数据库集群的 MySQL 次要引擎版本。它不适用于应用于维持系统稳定性的常规修补程序。

    维护时段

    选择选择时段并指定可以进行系统维护的每周时间范围。或者,选择无首选项为 Amazon RDS 随机分配一个时段。

  10. 单击启动数据库实例以启动您的 Aurora 数据库实例,然后单击关闭以关闭该向导。

    在 Amazon RDS 控制台中,新数据库实例显示在数据库实例列表中。数据库实例将为 creating 状态,直到该数据库实例完成创建并可供使用。当状态更改为 available 时,您可连接到数据库集群的主实例。根据所分配的数据库实例类和存储的不同,新实例可能需要数分钟时间才能变得可用。

    要查看新创建的集群,请在 Amazon RDS 控制台中选择集群视图,然后单击数据库集群以显示数据库集群详细信息。有关更多信息,请参阅 查看 Amazon Aurora 数据库集群

     Amazon Aurora 数据库实例列表

    记下集群的端口和终端节点。在您的执行写入或读取操作的任何应用程序的 JDBC 和 ODBC 连接字符串中,使用集群的终端节点和端口。

使用控制台创建 Aurora 副本

创建 Aurora 数据库集群的主实例之后,可通过使用“Create Aurora Replica”向导添加最多 15 个 Aurora 副本。

注意

Amazon Aurora 还支持对外部 数据库或 RDS 数据库实例的复制。在使用 Amazon Aurora 时,您的 RDS 数据库实例必须位于同一区域中。有关更多信息,请参阅 使用 Amazon Aurora 进行复制

使用 AWS 管理控制台创建 Aurora 副本

  1. 登录 AWS 管理控制台 并通过以下网址打开 Amazon RDS 控制台:https://console.amazonaws.cn/rds/

  2. 在导航窗格中,选择 Instances

  3. 选中 Aurora 数据库集群主实例左侧的复选框。

  4. 选择实例操作,然后选择创建 Aurora 副本

  5. 创建 Aurora 副本页面上,指定 Aurora 副本的选项。下表显示 Aurora 副本的设置。

    对于此选项... 请执行该操作

    可用区

    确定您是否希望指定特定的可用区。该列表仅包括那些由您之前指定的数据库子网组映射的可用区。有关可用区的更多信息,请参阅区域和可用区

    公开访问

    选择 Yes 可向 Aurora 副本提供公有 IP 地址;否则,请选择 No。有关隐藏 Aurora 副本以防止公开访问的更多信息,请参阅从 Internet 隐藏 VPC 中的数据库实例

    数据库实例类

    选择定义 Aurora 副本的处理和内存要求的数据库实例类。有关数据库实例类选项的更多信息,请参阅数据库实例类

    Aurora 副本源

    选择要为其创建 Aurora 副本的主实例的标识符。

    数据库实例标识符

    为该实例键入一个名称,该名称在您所选区域中对于您的账户是唯一的。您可选择对该名称进行一些巧妙处理,例如将您所选的区域和数据库引擎包括在名称中,例如 aurora-read-instance1

    优先级

    选择实例的故障转移优先级。如果您未选择值,则默认值为 tier-1。此优先级决定从主实例故障恢复时提升 Aurora 副本的顺序。有关更多信息,请参阅 Aurora 数据库集群的容错能力

    数据库端口

    Aurora 副本的端口与数据库集群的端口相同。

    数据库参数组

    选择参数组。Aurora 具有一个可使用的默认参数组,或者您也可以创建自己的参数组。有关参数组的更多信息,请参阅 使用数据库参数组

    增强监测

    选择启用增强监测可启用您的数据库集群在其上运行的操作系统的实时指标收集。有关更多信息,请参阅 增强监测

    Monitoring Role

    仅当增强监测设置为启用增强监测时可用。选择您创建的 IAM 角色以允许 Amazon RDS 代表您与 Amazon CloudWatch Logs 通信,或选择 Default 让 RDS 为您创建一个名为 rds-monitoring-role 的角色。有关更多信息,请参阅 增强监测

    粒度

    仅当增强监测设置为启用增强监测时可用。设置为数据库集群收集指标的时间之间的间隔 (以秒为单位)。

    自动次要版本升级

    如果您希望在次要 MySQL 数据库引擎版本升级可用时,让 Aurora 数据库集群自动接收这些升级,请选择启用自动次要版本升级

    自动次要版本升级选项仅适用于升级到 Amazon Aurora 数据库集群的 MySQL 次要引擎版本。它不适用于应用于维持系统稳定性的常规修补程序。

  6. 单击 Create Aurora Replica 创建 Aurora 副本。

记下 Aurora 副本的终端节点。在您的执行只读操作的任何应用程序的 JDBC 和 ODBC 连接字符串中,使用 Aurora 副本的终端节点。

CLI

注意

在使用 AWS CLI 创建 Aurora 数据库集群之前,您必须满足必要的先决条件,例如需创建 VPC 和 RDS 数据库子网组。有关更多信息,请参阅 数据库集群先决条件

使用 AWS CLI 启动 Aurora MySQL 数据库集群

在创建 Aurora MySQL 数据库集群或数据库实例时,确保根据该数据库集群或数据库实例的 MySQL 兼容性指定正确的 --engine 参数值。

  • 在创建 Aurora MySQL 5.7 数据库集群或数据库实例时,您必须为 --engine 参数指定 aurora-mysql

  • 在创建 Aurora MySQL 5.6 数据库集群或数据库实例时,您必须为 --engine 参数指定 aurora

完成以下步骤:

  1. 为您的新数据库集群标识数据库子网组和 VPC 安全组 ID,然后调用 create-db-cluster AWS CLI 命令来创建 Aurora MySQL 数据库集群。

    例如,以下命令创建名为 sample-cluster 的与 MySQL 5.7 兼容的新数据库集群。

    针对 Linux、OS X 或 Unix:

    aws rds create-db-cluster --db-cluster-identifier sample-cluster --engine aurora-mysql \ --engine-version 5.7.12 --master-username user-name --master-user-password password \ --db-subnet-group-name mysubnetgroup --vpc-security-group-ids sg-c7e5b0d2

    对于 Windows:

    aws rds create-db-cluster --db-cluster-identifier sample-cluster --engine aurora-mysql ^ --engine-version 5.7.12 --master-username user-name --master-user-password password ^ --db-subnet-group-name mysubnetgroup --vpc-security-group-ids sg-c7e5b0d2

    以下命令创建名为 sample-cluster 的与 MySQL 5.6 兼容的新数据库集群。

    针对 Linux、OS X 或 Unix:

    aws rds create-db-cluster --db-cluster-identifier sample-cluster --engine aurora \ --engine-version 5.6.10a --master-username user-name --master-user-password password \ --db-subnet-group-name mysubnetgroup --vpc-security-group-ids sg-c7e5b0d2

    对于 Windows:

    aws rds create-db-cluster --db-cluster-identifier sample-cluster --engine aurora ^ --engine-version 5.6.10a --master-username user-name --master-user-password password ^ --db-subnet-group-name mysubnetgroup --vpc-security-group-ids sg-c7e5b0d2
  2. 如果您使用控制台创建数据库集群,则 Amazon RDS 为您的数据库集群自动创建主实例 (写入方)。如果您使用 AWS CLI 创建数据库集群,则必须明确为数据库集群创建主实例。主实例是在数据库集群中创建的第一个实例。

    调用 create-db-instance AWS CLI 命令为数据库集群创建主实例。包括数据库集群的名称作为 --db-cluster-identifier 参数值。

    以下命令创建名为 sample-instance 的与 MySQL 5.7 兼容的新数据库实例。

    针对 Linux、OS X 或 Unix:

    aws rds create-db-instance --db-instance-identifier sample-instance \ --db-cluster-identifier sample-cluster --engine aurora-mysql --db-instance-class db.r4.large

    对于 Windows:

    aws rds create-db-instance --db-instance-identifier sample-instance ^ --db-cluster-identifier sample-cluster --engine aurora-mysql --db-instance-class db.r4.large

    以下命令创建名为 sample-instance 的与 MySQL 5.6 兼容的新数据库实例。

    针对 Linux、OS X 或 Unix:

    aws rds create-db-instance --db-instance-identifier sample-instance \ --db-cluster-identifier sample-cluster --engine aurora --db-instance-class db.r4.large

    对于 Windows:

    aws rds create-db-instance --db-instance-identifier sample-instance ^ --db-cluster-identifier sample-cluster --engine aurora --db-instance-class db.r4.large

使用 AWS CLI 启动 Aurora PostgreSQL 数据库集群

  1. 为您的新数据库集群标识数据库子网组和 VPC 安全组 ID,然后调用 create-db-cluster AWS CLI 命令来创建 Aurora PostgreSQL 数据库集群。

    例如,以下命令创建名为 sample-cluster 的新数据库集群。

    针对 Linux、OS X 或 Unix:

    aws rds create-db-cluster --db-cluster-identifier sample-cluster --engine aurora-postgresql \ --master-username user-name --master-user-password password \ --db-subnet-group-name mysubnetgroup --vpc-security-group-ids sg-c7e5b0d2

    对于 Windows:

    aws rds create-db-cluster --db-cluster-identifier sample-cluster --engine aurora-postgresql ^ --master-username user-name --master-user-password password ^ --db-subnet-group-name mysubnetgroup --vpc-security-group-ids sg-c7e5b0d2
  2. 如果您使用控制台创建数据库集群,则 Amazon RDS 为您的数据库集群自动创建主实例 (写入方)。如果您使用 AWS CLI 创建数据库集群,则必须明确为数据库集群创建主实例。主实例是在数据库集群中创建的第一个实例。

    调用 create-db-instance AWS CLI 命令为数据库集群创建主实例。包括数据库集群的名称作为 --db-cluster-identifier 参数值。

    针对 Linux、OS X 或 Unix:

    aws rds create-db-instance --db-instance-identifier sample-instance \ --db-cluster-identifier sample-cluster --engine aurora-postgresql --db-instance-class db.r4.large

    对于 Windows:

    aws rds create-db-instance --db-instance-identifier sample-instance ^ --db-cluster-identifier sample-cluster --engine aurora-postgresql --db-instance-class db.r4.large

使用 AWS CLI 在数据库集群中创建 Aurora 副本

在为数据库集群创建主实例后,您可以在数据库集群中创建最多 15 个 Aurora 副本,以便为只读查询提供支持。

我们建议您将数据库集群中的主实例和 Aurora 副本分发到多个可用区,以提升数据库集群的可用性。有关更多信息,请参阅 可用性

调用 create-db-instance AWS CLI 命令在数据库集群中创建 Aurora 副本。包括数据库集群的名称作为 --db-cluster-identifier 参数值。您可以选择使用 --availability-zone 参数为 Aurora 副本指定可用区,如以下示例所示。

例如,以下命令创建名为 sample-instance-us-west-2a 的与 MySQL 5.7 兼容的新 Aurora 副本。

针对 Linux、OS X 或 Unix:

aws rds create-db-instance --db-instance-identifier sample-instance-us-west-2a \ --db-cluster-identifier sample-cluster --engine aurora-mysql --db-instance-class db.r4.large \ --availability-zone us-west-2a

对于 Windows:

aws rds create-db-instance --db-instance-identifier sample-instance-us-west-2a ^ --db-cluster-identifier sample-cluster --engine aurora-mysql --db-instance-class db.r4.large ^ --availability-zone us-west-2a

以下命令创建名为 sample-instance-us-west-2a 的与 MySQL 5.6 兼容的新 Aurora 副本。

针对 Linux、OS X 或 Unix:

aws rds create-db-instance --db-instance-identifier sample-instance-us-west-2a \ --db-cluster-identifier sample-cluster --engine aurora --db-instance-class db.r4.large \ --availability-zone us-west-2a

对于 Windows:

aws rds create-db-instance --db-instance-identifier sample-instance-us-west-2a ^ --db-cluster-identifier sample-cluster --engine aurora --db-instance-class db.r4.large ^ --availability-zone us-west-2a

相关主题