

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 建立資料庫叢集
<a name="limitless-create-cluster"></a>

使用下列程序建立 Aurora PostgreSQL 資料庫叢集，此叢集會使用 Aurora PostgreSQL Limitless Database。

您可以使用 AWS 管理主控台 或 AWS CLI 來建立使用 Aurora PostgreSQL 無限資料庫的資料庫叢集。您可以建立主要資料庫叢集和資料庫碎片群組。

## 主控台
<a name="limitless-create-cluster.CON"></a>

當您使用 AWS 管理主控台 建立主要資料庫叢集時，也會在相同的程序中建立資料庫碎片群組。

**使用主控台建立資料庫叢集**

1. 登入 AWS 管理主控台 ，並在 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)：// 開啟 Amazon RDS 主控台。

1. 選擇**建立資料庫**。

   隨即顯示**建立資料庫**頁面。

1. 針對**引擎類型**，請選擇 **Aurora (PostgreSQL 相容)**。

1. 針對**版本**，選擇下列其中一項：
   + **具有 Limitless Database 的 Aurora PostgreSQL (與 PostgreSQL 16.4 相容)**
   + **具有 Limitless Database 的 Aurora PostgreSQL (與 PostgreSQL 16.6 相容)**

1. 對於 **Aurora PostgreSQL Limitless Database**：  
![\[Aurora PostgreSQL Limitless Database 主控台設定，具有碎片和分佈參數的組態選項。\]](http://docs.aws.amazon.com/zh_tw/AmazonRDS/latest/AuroraUserGuide/images/limitless_create_database.png)

   1. 輸入**資料庫碎片群組識別符**。
**重要**  
建立資料庫碎片群組之後，您就無法變更資料庫叢集識別符或資料庫碎片群組識別符。

   1. 針對**資料庫碎片群組容量範圍**：

      1. 輸入**容量下限 (ACU)**。使用至少為 16 個 ACU 的值。

         對於開發環境，預設值為 16 個 ACU。對於生產環境，預設值為 24 個 ACU。

      1. 輸入**容量上限 (ACU)**。使用至少為 16 個 ACU 或最多為 6144 個 ACU 的值。

         對於開發環境，預設值為 64 個 ACU。對於生產環境，預設值為 384 個 ACU。

      如需詳細資訊，請參閱[將資料庫碎片群組容量上限與建立的路由器和碎片數量建立關聯](limitless-cluster.md#limitless-capacity-mapping)。

   1. 對於**資料庫碎片群組部署**，選擇是否要為資料庫碎片群組建立待命：
      + **無運算備援**：為每個碎片建立沒有待命的資料庫碎片群組。這是預設值。
      + **使用單一容錯移轉目標的運算備援**：在不同的可用區域 (AZ) 中建立具有單一運算待命的資料庫碎片群組。
      + **具有兩個容錯移轉目標的運算備援**：在兩個不同的 AZ 中建立具有兩個運算待命的資料庫碎片群組。
**注意**  
如果您將運算備援設定為零以外的值，碎片資料庫執行個體總數將加倍或變成三倍。這些額外的資料庫執行個體是運算待命，可擴展和縮減至與寫入器執行個體相同的容量。您不會單獨為待命設定容量範圍。因此，ACU 用量和帳單會相應地加倍和變成三倍。若要了解運算備援產生的確切 ACU 用量，請參閱 [DBShardGroup 指標](limitless-monitoring.cw.md#limitless-monitoring.cw.DBShardGroup)中的 `DBShardGroupComputeRedundancyCapacity` 指標。

   1. 選擇是否要使資料庫碎片群組變成可公開存取。
**注意**  
您無法在建立資料庫碎片群組之後修改此設定。

1. 對於**連線**：

   1. (選用) 選取**連線至 EC2 運算資源**，然後選擇現有的 EC2 執行個體或建立新的執行個體。
**注意**  
如果您連線到 EC2 執行個體，則無法使資料庫碎片群組變成可公開存取。

   1. 針對**網路類型**，選擇 **IPv4** 或**雙堆疊模式**。

   1. 選擇**虛擬私有雲端 (VPC)** 和**資料庫子網路群組**，或使用預設設定。
**注意**  
如果您在美國東部 (維吉尼亞北部) 區域中建立 Limitless Database 資料庫叢集，則請勿在資料庫子網路群組中包含 `us-east-1e` 可用區域 (AZ)。由於資源限制，`us-east-1e` AZ 中不支援 Aurora Serverless v2，因此也不支援 Limitless Database。

   1. 選擇 **VPC 安全群組 (防火牆)**，或使用預設設定。

1. 對於**資料庫身分驗證**，選擇**密碼身分驗證**或**密碼和 IAM 資料庫身分驗證**。

1. 對於**監控**，請確定已選取**開啟績效詳情**和**啟用增強型監控**核取方塊。

   對於 Performance Insights，選擇至少 1 個月的保留時間。

1. 展開頁面上最後一項**其他組態**。

1. 對於**日誌匯出**，請確定已選取 **PostgreSQL 日誌**核取方塊。

1. 視需要指定其他設定。如需詳細資訊，請參閱[Aurora 資料庫叢集的設定](Aurora.CreateInstance.md#Aurora.CreateInstance.Settings)。

1. 選擇**建立資料庫**。

建立主要資料庫叢集和資料庫碎片群組之後，其會在**資料庫**頁面顯示。

![\[Aurora PostgreSQL Limitless Database 主要資料庫叢集和資料庫碎片群組。\]](http://docs.aws.amazon.com/zh_tw/AmazonRDS/latest/AuroraUserGuide/images/limitless_cluster_164.png)


## CLI
<a name="limitless-create-CLI"></a>

當您使用 AWS CLI 建立使用 Aurora PostgreSQL 無限資料庫的資料庫叢集時，請執行下列任務：

1. [建立主要資料庫叢集](#limitless-create-CLI.cluster).

1. [建立資料庫碎片群組](#limitless-create-CLI.shard-group).

### 建立主要資料庫叢集
<a name="limitless-create-CLI.cluster"></a>

若要建立資料庫叢集，需要下列參數：
+ `--db-cluster-identifier` – 資料庫叢集的名稱。
+ `--engine`：資料庫叢集必須使用 `aurora-postgresql` 資料庫引擎。
+ `--engine-version`：資料庫叢集必須使用其中一個資料庫引擎版本：
  + `16.4-limitless`
  + `16.6-limitless`
+ `--storage-type`：資料庫叢集必須使用 `aurora-iopt1` 資料庫叢集儲存組態。
+ `--cluster-scalability-type`：指定 Aurora 資料庫叢集的可擴展性模式。設為 `limitless` 時，叢集會以 Aurora PostgreSQL Limitless Database 的形式運作。設為 `standard` (預設值) 時，叢集會使用一般資料庫執行個體建立。
**注意**  
您無法在建立資料庫叢集之後修改此設定。
+ `--master-username`：資料庫叢集主要使用者的名稱。
+ `--master-user-password`：主要使用者密碼。
+ `--enable-performance-insights`：您必須啟用 Performance Insights。
+ `--performance-insights-retention-period`：Performance Insights 保留期間必須至少為 31 天。
+ `--monitoring-interval`：為資料庫叢集收集增強型監控指標點之間的間隔 (秒)。此值不能是 `0`。
+ `--monitoring-role-arn`：允許 RDS 將增強型監控指標傳送到 Amazon CloudWatch Logs 之 IAM 角色的 Amazon Resource Name (ARN)。
+ `--enable-cloudwatch-logs-exports`：您必須將 `postgresql` 日誌匯出至 CloudWatch Logs。

下列是選用參數：
+ `--db-subnet-group-name`：要與此資料庫叢集關聯之資料庫子網路群組。這也會決定與資料庫叢集相關聯的 VPC。
**注意**  
如果您在美國東部 (維吉尼亞北部) 區域中建立 Limitless Database 資料庫叢集，則請勿在資料庫子網路群組中包含 `us-east-1e` 可用區域 (AZ)。由於資源限制，`us-east-1e` AZ 中不支援 Aurora Serverless v2，因此也不支援 Limitless Database。
+ `--vpc-security-group-ids`：與此資料庫叢集關聯的 VPC 安全群組清單。
+ `--performance-insights-kms-key-id` – Performance Insights 資料的加密 AWS KMS key 識別符。如果您未指定 KMS 金鑰， AWS 帳戶 則會使用 的預設金鑰。
+ `--region` – 您建立資料庫叢集 AWS 區域 的 。其必須是支援 Aurora PostgreSQL Limitless Database 的資料庫。

若要使用預設 VPC 和 VPC 安全群組，請省略 `--db-subnet-group-name` 和 `--vpc-security-group-ids` 選項。

**建立主要資料庫叢集**
+ 

  ```
  aws rds create-db-cluster \
      --db-cluster-identifier my-limitless-cluster \
      --engine aurora-postgresql \
      --engine-version 16.6-limitless \
      --storage-type aurora-iopt1 \
      --cluster-scalability-type limitless \
      --master-username myuser \
      --master-user-password mypassword \
      --db-subnet-group-name mysubnetgroup \
      --vpc-security-group-ids sg-c7e5b0d2 \
      --enable-performance-insights \
      --performance-insights-retention-period 31 \
      --monitoring-interval 5 \
      --monitoring-role-arn arn:aws:iam::123456789012:role/EMrole \
      --enable-cloudwatch-logs-exports postgresql
  ```

如需詳細資訊，請參閱 [create-db-cluster](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/create-db-cluster.html)。

### 建立資料庫碎片群組
<a name="limitless-create-CLI.shard-group"></a>

接著，在剛建立的資料庫叢集中建立資料庫碎片群組。下列是必要參數：
+ `--db-shard-group-identifier`：資料庫碎片群組的名稱。

  資料庫碎片群組識別符有下列限制：
  + 它在 AWS 帳戶 和您建立它 AWS 區域 的位置必須是唯一的。
  + 必須包含 1–63 個字母、數字或連字號。
  + 第一個字元必須是字母。
  + 不能以一個連字號結尾或是連續包含兩個連字號。
  + 
**重要**  
建立資料庫碎片群組之後，您就無法變更資料庫叢集識別符或資料庫碎片群組識別符。
+ `--db-cluster-identifier`：您要在其中建立資料庫碎片群組的資料庫叢集名稱。
+ `--max-acu`：資料庫碎片群組的最大容量。其必須介於 16–6144 個 ACU 之間。如需容量限制高於 6144 個 ACUs，請聯絡 AWS。

  路由器和碎片初始數量取決於您在建立資料庫碎片群組時設定的容量上限。容量上限越高，在資料庫碎片群組中建立的路由器和碎片數量就越高。如需詳細資訊，請參閱[將資料庫碎片群組容量上限與建立的路由器和碎片數量建立關聯](limitless-cluster.md#limitless-capacity-mapping)。

下列是選用參數：
+ `--compute-redundancy`：是否要為資料庫碎片群組建立待命。此參數可以有下列值：
  + `0`：為每個碎片建立沒有待命的資料庫碎片群組。這是預設值。
  + `1`：在不同的可用區域 (AZ) 中建立具有一個運算待命的資料庫碎片群組。
  + `2`：在兩個不同的 AZ 建立具有兩個運算待命的資料庫碎片群組。
**注意**  
如果您將運算備援設定為零以外的值，碎片總數將加倍或變成三倍。這會產生額外費用。  
運算待命中的節點會向上和向下擴展到與寫入器相同的容量。您不會單獨為待命設定容量範圍。
+ `--min-acu`：資料庫碎片群組的容量下限。其必須至少為 16 個 ACU，這是預設值。
+ `--publicly-accessible|--no-publicly-accessible`：是否將可公開存取的 IP 地址指派給資料庫碎片群組。資料庫碎片群組的存取權是由叢集使用的安全群組所控制。

  預設值為 `--no-publicly-accessible`。
**注意**  
您無法在建立資料庫碎片群組之後修改此設定。

**建立資料庫碎片群組**
+ 

  ```
  aws rds create-db-shard-group \
      --db-shard-group-identifier my-db-shard-group \
      --db-cluster-identifier my-limitless-cluster \
      --max-acu 1000
  ```