跨 AWS 區域 複寫 Amazon Aurora MySQL 資料庫叢集 - Amazon Aurora

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

跨 AWS 區域 複寫 Amazon Aurora MySQL 資料庫叢集

您可以建立 Amazon Aurora MySQL 資料庫叢集,作為與來源資料庫叢集不同 AWS 區域 中的僅供讀取複本。採取此方法可以改善您的災難復原功能,讓您將讀取操作擴展至靠近您使用者的 AWS 區域,並讓您更輕鬆在 AWS 區域 之間進行遷移。

您可以建立加密和未加密的資料庫叢集的僅供讀取複本。如果來源資料庫叢集已加密,則必須加密僅供讀取複本。

對於每個來源資料庫叢集,您最多可有五個屬於僅供讀取複本的跨區域資料庫叢集。

注意

除了跨區域僅供讀取複本之外,您可以使用 Aurora 全域資料庫,以最小的延遲時間調整讀取操作。Aurora 全域資料庫在一個 AWS 區域 中具有主要 Aurora 資料庫叢集,以及在不同區域中具有最多五個次要唯讀資料庫叢集。每個次要資料庫叢集最多可包含 16 個 (而非 15) Aurora 複本。從主要資料庫叢集複寫到所有次要資料庫叢集,由 Aurora 儲存層而非資料庫引擎處理,因此複寫變更的延遲時間 (通常小於 1 秒)。將資料庫引擎保留在複寫程序之外,意味著資料庫引擎專用於處理工作負載。這也意味著您不需要設定或管理 Aurora MySQL 的 binlog (二進位日誌記錄) 複寫。如需進一步了解,請參閱 使用 Amazon Aurora Global Database

在另一個 AWS 區域 中建立 Aurora MySQL 資料庫叢集僅供讀取複本時,您應該注意下列各項:

  • 來源資料庫叢集和跨區域僅供讀取複本資料庫叢集,連同資料庫叢集的主要執行個體,最多可有 15 個 Aurora 複本。您可以使用此功能,同時針對來源 AWS 區域 和複寫目標 AWS 區域 擴展讀取作業。

  • 在跨區域案例中,由於 AWS 區域 之間較長的網路通道,使得來源資料庫叢集和僅供讀取複本之間有較多的延遲時間。

  • 跨區域複寫傳輸的資料會衍生 Amazon RDS 數據傳輸費。對於傳出來源 AWS 區域 的資料,下列跨區域複寫動作會產生費用:

    • 當您建立僅供讀取複本時,Amazon RDS 會取得來源叢集的快照,並將快照傳輸至僅供讀取複本的 AWS 區域。

    • 在來源資料庫中每次修改資料時,Amazon RDS 會從來源區域將資料傳輸至僅供讀取複本 AWS 區域。

    如需 Amazon RDS 資料傳輸定價的詳細資訊,請參閱 Amazon Aurora 定價

  • 您可以針對參考相同來源資料庫叢集的僅供讀取複本執行多個並行建立或刪除動作。不過,您必須維持每個來源資料庫叢集五個以內僅供讀取複本的限制。

  • 若希望複寫作業順利運作,每個僅供讀取複本具備的運算和儲存資源數量應與來源資料庫叢集相同。若您擴展來源資料庫叢集,您也應該擴展僅供讀取複本。

開始之前

在可以建立屬於跨區域僅供讀取複本的 Aurora MySQL 資料庫叢集之前,必須在來源 Aurora MySQL 資料庫叢集上開啟二進位日誌。Aurora MySQL 的跨區域複寫使用 MySQL 二進位複寫在跨區域僅供讀取複本資料庫叢集上重播變更。

若要在 Aurora MySQL 資料庫叢集上開啟二進位日誌,請更新來源資料庫叢集的 binlog_format 參數。binlog_format 參數為叢集層級參數,位於預設的叢集參數群組中。如果資料庫叢集使用預設的資料庫叢集參數群組,請建立新資料庫叢集參數群組來修改 binlog_format 設定。建議您將 binlog_format 設定為 MIXED。不過,如果需要特定的 binlog 格式,也可以將 binlog_format 設定為 ROWSTATEMENT。將 Aurora 資料庫叢集重新開機,讓變更生效。

如需搭配 Aurora MySQL 使用二進位記錄的詳細資訊,請參閱 Aurora 與 MySQL 之間或 Aurora 與另一個 Aurora 資料庫叢集之間的複寫 (二進位複寫)。如需修改 Aurora MySQL 組態參數的詳細資訊,請參閱 Amazon Aurora 資料庫叢集和資料庫執行個體參數使用參數群組

建立屬於跨區域僅供讀取複本的 Amazon Aurora MySQL 資料庫叢集

您可以使用 AWS Management Console、AWS Command Line Interface (AWS CLI) 或 Amazon RDS API 來建立屬於跨區域僅供讀取複本的 Aurora 資料庫叢集。您可以透過加密和未加密的資料庫叢集建立跨區域僅供讀取複本。

使用 AWS Management Console 為 Aurora MySQL 建立跨區域僅供讀取複本時,Amazon RDS 會在目標 AWS 區域 中建立資料庫叢集,然後自動建立資料庫執行個體,它是該資料庫叢集的主要執行個體。

使用 AWS CLI 或 RDS API 建立跨區域僅供讀取複本時,您會先在目標 AWS 區域 中建立資料庫叢集,並等候它成為作用中。一旦它處於作用中狀態,您便可以建立資料庫執行個體,即該資料庫叢集的主要執行個體。

當僅供讀取複本資料庫叢集的主要執行個體變得可用時,複寫便會開始。

使用下列程序透過 Aurora MySQL 資料庫叢集建立跨區域僅供讀取複本。這些程序適用透過加密或未加密的資料庫叢集建立僅供讀取複本。

使用 AWS Management Console 建立屬於跨區域僅供讀取複本的 Aurora MySQL 資料庫叢集
  1. 登入 AWS Management Console,開啟位於 https://console.aws.amazon.com/rds/ 的 Amazon RDS 主控台。

  2. 在 AWS Management Console 的右上角,選取裝載來源資料庫叢集的 AWS 區域。

  3. 在導覽窗格中,選擇 Databases (資料庫)。

  4. 選擇要建立跨區域僅供讀取複本的資料庫叢集。

  5. 若為 Actions (動作),請選擇 Creat cross region replica (建立跨區域僅供讀取複本)

  6. Create cross region read replica (建立跨區域僅供讀取複本) 頁面上,選擇跨區域僅供讀取複本資料庫叢集的選項設定,如下表所述。

    選項 描述

    目的地區域

    選擇要託管新跨區域僅供讀取複本資料庫叢集的 AWS 區域。

    Destination DB subnet group (目的地資料庫子網路群組)

    選擇要用於跨區域僅供讀取複本資料庫叢集的資料庫子網路群組。

    可公開存取

    選擇 Yes (是) 以提供跨區域僅供讀取複本資料庫叢集一個公有 IP 地址;否則,選取 No (否)

    加密

    選取 Enable Encryption (啟用加密) 以開啟此資料庫叢集的靜態加密。如需詳細資訊,請參閱加密 Amazon Aurora 資源

    AWS KMS key

    只有在 Encryption (加密) 設為 Enable Encryption (啟用加密) 時才能使用。選取要用於加密此資料庫叢集的 AWS KMS key。如需詳細資訊,請參閱加密 Amazon Aurora 資源

    DB instance class (資料庫執行個體類別)

    選擇資料庫執行個體類別,為資料庫叢集內的主要執行個體定義處理和記憶體要求。如需資料庫執行個體類別選項的詳細資訊,請參閱Aurora 資料庫執行個體類別

    Multi-AZ deployment (異地同步備份部署)

    選擇 Yes (是),在目標 AWS 區域 的另一個可用區域中建立新資料庫叢集的僅供讀取複本,以獲得容錯移轉支援。如需多個可用區域的詳細資訊,請參閱區域和可用區域

    Read replica source (僅供讀取複本來源)

    選擇要為其建立跨區域僅供讀取複本的來源資料庫叢集。

    DB instance identifier (資料庫執行個體識別符):

    輸入跨區域僅供讀取複本資料庫叢集中主要執行個體的名稱。此識別符用於新資料庫叢集內主要執行個體的端點位址。

    該資料庫執行個體識別符有下列限制:

    • 必須包含 1 到 63 個英數字元或連字號。

    • 第一個字元必須是字母。

    • 不能以一個連字號結尾或是連續包含兩個連字號。

    • 其對每個 AWS 區域、每個 AWS 帳戶 的所有資料庫執行個體都必須是唯一的。

    因為跨區域僅供讀取複本資料庫叢集是從來源資料庫叢集的快照建立而來,僅供讀取複本的主要使用者名稱和主要密碼會與來源資料庫叢集的主要使用者名稱與主要密碼相同。

    DB cluster identifier (資料庫叢集識別符)

    鍵入跨區域僅供讀取複本資料庫叢集的名稱,其對複本的目標 AWS 區域 中的帳戶是唯一的。此識別符用於資料庫叢集中的叢集端點位址。如需叢集端點的詳細資訊,請參閱Amazon Aurora 連線管理

    資料庫叢集識別符有下列限制:

    • 必須包含 1 到 63 個英數字元或連字號。

    • 第一個字元必須是字母。

    • 不能以一個連字號結尾或是連續包含兩個連字號。

    • 其對每個 AWS 區域 內每個 AWS 帳戶 的所有資料庫叢集都必須是唯一的。

    優先順序

    選擇新資料庫叢集主要執行個體的容錯移轉優先順序。此優先順序決定從主要執行個體失敗中復原時提升 Aurora 複本的順序。如果您未選取值,則預設值為 tier-1 (第一層)。如需更多詳細資訊,請參閱 Aurora 資料庫叢集的容錯能力

    Database port (資料庫連接埠)

    指定應用程式和公用程式將用於存取資料庫的連接埠。Aurora 資料庫叢集預設為 MySQL 預設連接埠 3306。某些公司的防火牆會封鎖與此預設連接埠的連線。如果您的公司防火牆會封鎖預設連接埠,請為新的資料庫叢集選擇另一個連接埠。

    Enhanced monitoring (增強型監控)

    選擇 Enable enhanced monitoring (啟用增強型監控),以針對資料庫叢集執行所在的作業系統即時開啟收集指標。如需詳細資訊,請參閱使用增強型監控來監控作業系統指標

    監控角色

    只有在 Enhanced Monitoring (增強型監控) 設為 Enable enhanced monitoring (啟用增強型監控) 時才能使用。選擇您建立的 IAM 角色以允許 Amazon RDS 為您與 Amazon CloudWatch 日誌通訊,或選擇預設讓 RDS 為您指定的角色建立角色rds-monitoring-role。如需詳細資訊,請參閱使用增強型監控來監控作業系統指標

    精細程度

    只有在 Enhanced Monitoring (增強型監控) 設為 Enable enhanced monitoring (啟用增強型監控) 時才能使用。針對資料庫叢集,設定收集指標之間的間隔 (以秒為單位)。

    Auto minor version upgrade (自動次要版本升級)

    此設定不適用於 Aurora MySQL 資料庫叢集。

    如需 Aurora MySQL 引擎更新的詳細資訊,請參閱 Amazon Aurora MySQL 的資料庫引擎更新

  7. 選擇 Create (建立) 來建立您的 Aurora 跨區域僅供讀取複本。

使用 CLI 建立屬於跨區域僅供讀取複本的 Aurora MySQL 資料庫叢集
  1. 在您想要建立僅供讀取複本資料庫叢集的 AWS CLI 中呼叫 create-db-cluster AWS 區域 命令。包含 --replication-source-identifier 選項,並指定要為其建立僅供讀取複本的來源資料庫叢集的 Amazon Resource Name (ARN)。

    對於由 --replication-source-identifier 所識別資料庫叢集已加密的跨區域複寫,必須指定 --kms-key-id 選項和 --storage-encrypted 選項。

    注意

    您可以透過指定 --storage-encrypted 並提供 --kms-key-id 的值,設定從未加密的資料庫叢集對加密的僅供讀取複本的跨區域複寫。

    您無法指定 --master-username--master-user-password 參數。那些值是從來源資料庫叢集中取得。

    下列程式碼範例會透過 us-west-2 區域中未加密的資料庫叢集快照,在 us-east-1 區域中建立僅供讀取複本。此命令是在 us-east-1 區域中呼叫。此範例會指定 --manage-master-user-password 選項來產生主要使用者密碼,並在 Secrets Manager 中管理該密碼。如需詳細資訊,請參閱使用 Aurora 和密碼管理 AWS Secrets Manager。或者,您可以使用 --master-password 選項,自行指定和管理密碼。

    對於LinuxmacOS、或Unix:

    aws rds create-db-cluster \ --db-cluster-identifier sample-replica-cluster \ --engine aurora \ --replication-source-identifier arn:aws:rds:us-west-2:123456789012:cluster:sample-master-cluster

    在Windows中:

    aws rds create-db-cluster ^ --db-cluster-identifier sample-replica-cluster ^ --engine aurora ^ --replication-source-identifier arn:aws:rds:us-west-2:123456789012:cluster:sample-master-cluster

    下列程式碼範例會透過 us-west-2 區域中加密的資料庫叢集快照,在 us-east-1 區域中建立僅供讀取複本。此命令是在 us-east-1 區域中呼叫。

    對於LinuxmacOS、或Unix:

    aws rds create-db-cluster \ --db-cluster-identifier sample-replica-cluster \ --engine aurora \ --replication-source-identifier arn:aws:rds:us-west-2:123456789012:cluster:sample-master-cluster \ --kms-key-id my-us-east-1-key \ --storage-encrypted

    在Windows中:

    aws rds create-db-cluster ^ --db-cluster-identifier sample-replica-cluster ^ --engine aurora ^ --replication-source-identifier arn:aws:rds:us-west-2:123456789012:cluster:sample-master-cluster ^ --kms-key-id my-us-east-1-key ^ --storage-encrypted

    在 AWS GovCloud (美國東部) 和 AWS GovCloud (美國西部) 區域之間進行跨區域複寫需要此--source-region選項,其中識別的資料庫叢集已加--replication-source-identifier密。對於 --source-region,請指定來源資料庫叢集的 AWS 區域。

    若未指定 --source-region,請指定 --pre-signed-url 值。presigned URL (預先簽章的 URL) 為包含對來源 AWS 區域 中呼叫 create-db-cluster 命令之 Signature 第 4 版簽章請求的 URL。若要進一步瞭解該pre-signed-url選項,請參閱《AWS CLI指令參考 create-db-cluster中的〈〉。

  2. 使用 AWS CLI describe-db-clusters 命令來檢查資料庫叢集已變得可供使用,如下列範例所示。

    aws rds describe-db-clusters --db-cluster-identifier sample-replica-cluster

    describe-db-clusters 結果顯示 available 的狀態時,請建立資料庫叢集的主要執行個體以便複寫可以開始。若要這麼做,請使用 AWS CLI create-db-instance 命令,如下列範例所示。

    對於LinuxmacOS、或Unix:

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

    在Windows中:

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

    當資料庫執行個體建立並可用時,複寫即會開始。您可以透過呼叫 AWS CLI describe-db-instances 命令來判斷資料庫執行個體是否可用。

使用 API 建立屬於跨區域僅供讀取複本的 Aurora MySQL 資料庫叢集
  1. 在您想要建立僅供讀取複本資料庫叢集的 AWS 區域 中呼叫 RDS API CreateDBCluster 作業。包含 ReplicationSourceIdentifier 參數,並指定要為其建立僅供讀取複本之來源資料庫叢集的 Amazon Resource Name (ARN)。

    對於由 ReplicationSourceIdentifier 所識別資料庫叢集已加密的跨區域複寫,須指定 KmsKeyId 參數,並將 StorageEncrypted 參數設定為 true

    注意

    您可以透過將 StorageEncrypted 指定為 true 並提供 KmsKeyId 的值,設定從未加密的資料庫叢集對加密的僅供讀取複本的跨區域複寫。在此情況下,您不需要指定 PreSignedUrl

    您不需要包含 MasterUsernameMasterUserPassword 參數,因為這些值取自來源資料庫叢集。

    下列程式碼範例會透過 us-west-2 區域中未加密的資料庫叢集快照,在 us-east-1 區域中建立僅供讀取複本。此動作是在 us-east-1 區域中呼叫。

    https://rds.us-east-1.amazonaws.com/ ?Action=CreateDBCluster &ReplicationSourceIdentifier=arn:aws:rds:us-west-2:123456789012:cluster:sample-master-cluster &DBClusterIdentifier=sample-replica-cluster &Engine=aurora &SignatureMethod=HmacSHA256 &SignatureVersion=4 &Version=2014-10-31 &X-Amz-Algorithm=AWS4-HMAC-SHA256 &X-Amz-Credential=AKIADQKE4SARGYLE/20161117/us-east-1/rds/aws4_request &X-Amz-Date=20160201T001547Z &X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date &X-Amz-Signature=a04c831a0b54b5e4cd236a90dcb9f5fab7185eb3b72b5ebe9a70a4e95790c8b7

    下列程式碼範例會透過 us-west-2 區域中加密的資料庫叢集快照,在 us-east-1 區域中建立僅供讀取複本。此動作是在 us-east-1 區域中呼叫。

    https://rds.us-east-1.amazonaws.com/ ?Action=CreateDBCluster &KmsKeyId=my-us-east-1-key &StorageEncrypted=true &PreSignedUrl=https%253A%252F%252Frds.us-west-2.amazonaws.com%252F %253FAction%253DCreateDBCluster %2526DestinationRegion%253Dus-east-1 %2526KmsKeyId%253Dmy-us-east-1-key %2526ReplicationSourceIdentifier%253Darn%25253Aaws%25253Ards%25253Aus-west-2%25253A123456789012%25253Acluster%25253Asample-master-cluster %2526SignatureMethod%253DHmacSHA256 %2526SignatureVersion%253D4 %2526Version%253D2014-10-31 %2526X-Amz-Algorithm%253DAWS4-HMAC-SHA256 %2526X-Amz-Credential%253DAKIADQKE4SARGYLE%252F20161117%252Fus-west-2%252Frds%252Faws4_request %2526X-Amz-Date%253D20161117T215409Z %2526X-Amz-Expires%253D3600 %2526X-Amz-SignedHeaders%253Dcontent-type%253Bhost%253Buser-agent%253Bx-amz-content-sha256%253Bx-amz-date %2526X-Amz-Signature%253D255a0f17b4e717d3b67fad163c3ec26573b882c03a65523522cf890a67fca613 &ReplicationSourceIdentifier=arn:aws:rds:us-west-2:123456789012:cluster:sample-master-cluster &DBClusterIdentifier=sample-replica-cluster &Engine=aurora &SignatureMethod=HmacSHA256 &SignatureVersion=4 &Version=2014-10-31 &X-Amz-Algorithm=AWS4-HMAC-SHA256 &X-Amz-Credential=AKIADQKE4SARGYLE/20161117/us-east-1/rds/aws4_request &X-Amz-Date=20160201T001547Z &X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date &X-Amz-Signature=a04c831a0b54b5e4cd236a90dcb9f5fab7185eb3b72b5ebe9a70a4e95790c8b7

    對於 AWS GovCloud (美國東部) 和 (美國西部) 區域之間的跨區域複寫 AWS GovCloud (其中所ReplicationSourceIdentifier識別的資料庫叢集已加密),也請指定參數。PreSignedUrl預先簽章的 URL 必須是對 CreateDBCluster API 作業的有效請求,而此動作可執行於包含要複寫之加密資料庫叢集的來源 AWS 區域 中。KMS 金鑰識別碼用來加密僅供讀取複本,而且必須是對目的地 AWS 區域 有效的 KMS 金鑰。若要自動而非手動產生預先簽章的 URL,請改為使用 AWS CLIcreate-db-cluster 命令搭配 --source-region 選項。

  2. 使用 RDS API DescribeDBClusters 作業來檢查資料庫叢集是否已可供使用,如下列範例所示。

    https://rds.us-east-1.amazonaws.com/ ?Action=DescribeDBClusters &DBClusterIdentifier=sample-replica-cluster &SignatureMethod=HmacSHA256 &SignatureVersion=4 &Version=2014-10-31 &X-Amz-Algorithm=AWS4-HMAC-SHA256 &X-Amz-Credential=AKIADQKE4SARGYLE/20161117/us-east-1/rds/aws4_request &X-Amz-Date=20160201T002223Z &X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date &X-Amz-Signature=84c2e4f8fba7c577ac5d820711e34c6e45ffcd35be8a6b7c50f329a74f35f426

    DescribeDBClusters 結果顯示 available 的狀態時,請建立資料庫叢集的主要執行個體,則複寫可隨即開始。若要這麼做,請使用 RDS API CreateDBInstance 動作,如下列範例所示。

    https://rds.us-east-1.amazonaws.com/ ?Action=CreateDBInstance &DBClusterIdentifier=sample-replica-cluster &DBInstanceClass=db.r3.large &DBInstanceIdentifier=sample-replica-instance &Engine=aurora &SignatureMethod=HmacSHA256 &SignatureVersion=4 &Version=2014-10-31 &X-Amz-Algorithm=AWS4-HMAC-SHA256 &X-Amz-Credential=AKIADQKE4SARGYLE/20161117/us-east-1/rds/aws4_request &X-Amz-Date=20160201T003808Z &X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date &X-Amz-Signature=125fe575959f5bbcebd53f2365f907179757a08b5d7a16a378dfa59387f58cdb

    當資料庫執行個體建立並可用時,複寫即會開始。您可呼叫 AWS CLI DescribeDBInstances 命令來判斷資料庫執行個體是否可用。

檢視 Amazon Aurora MySQL 跨區域複本

您可以透過呼叫describe-db-clustersAWS CLI命令或描述的叢集 RDS API 作業,檢視 Amazon Aurora MySQL 資料庫叢集的跨區域複寫關係。於回應中,請參閱 ReadReplicaIdentifiers 欄位,以取得任何跨區域讀取複本資料庫叢集的資料庫叢集識別符。有關作為複寫來源之來源資料庫叢集的 ARN,請參閱 ReplicationSourceIdentifier 元素。

將僅供讀取複本提升為資料庫叢集

您可以提升 Aurora MySQL 僅供讀取複本為獨立的資料庫叢集。當您提升 Aurora MySQL 僅供讀取複本時,其資料庫執行個體將在可使用前重新啟動。

一般而言,您會在來源資料庫叢集失敗時,才提升 Aurora MySQL 僅供讀取複本為獨立的資料庫叢集,以做為資料復原結構描述。

要進行此操作,請先建立僅供讀取複本,然後監控來源資料庫叢集的故障。若發生故障,請執行下列程序:

  1. 提升僅供讀取複本。

  2. 將資料庫流量引導至提升的資料庫叢集。

  3. 以提升的資料庫叢集做為來源,建立替換的僅供讀取複本。

當您提升僅供讀取複本時,該僅供讀取複本就成為獨立的 Aurora 資料庫叢集。該提升程序可耗費數分鐘或更長的時間來完成,視僅供讀取複本大小而定。在您提升僅供讀取複本為新的資料庫叢集後,它與其他資料庫叢集無異。例如,您可以從中建立僅供讀取複本並執行 point-in-time 還原作業。您也可以建立資料庫叢集的 Aurora 複本。

因為提升的資料庫叢集將不再是僅供讀取複本,因此您不得將其用做複寫目標。

以下步驟顯示了提升僅供讀取複本至資料庫叢集的一般流程:

  1. 停止至僅供讀取複本來源資料庫叢集的任何寫入交易,然後等待針對僅供讀取複本的所有更新。僅供讀取複本在來源資料庫叢集上發生資料庫更新後,此複寫延遲可能會有很大差異。使用 ReplicaLag 指標以確定針對僅供讀取複本進行的所有更新時間。ReplicaLag 指標會記錄讀取複本資料庫執行個體落後於來源資料庫執行個體的時間量。當 ReplicaLag 指標到達 0,讀取複本即已跟上來源資料庫執行個體。

  2. 使用 Amazon RDS 主控台、AWS CLI命令叢集或PromoteReadReplica資料庫promote-read-replica-db叢 Amazon RDS API 作業上的升級選項來提升僅供讀取複本。

    您可選擇一個 Aurora MySQL 資料庫執行個體以提升僅供讀取複本。在僅供讀取複本提升後,Aurora MySQL 資料庫叢集即已提升為獨立資料庫叢集。具有最高容錯移轉優先順序的資料庫執行個體,已提升為資料庫叢集的資料庫執行個體。其他成為 Aurora 複本的資料庫執行個體。

    注意

    提升程序可能需要幾分鐘來完成。當您提升僅供讀取複本時,複寫便停止了,且資料庫執行個體將重新啟動。當重新啟動完成,該僅供讀取複本便可用做新的資料庫叢集。

將 Aurora MySQL 僅供讀取複本提升為資料庫叢集
  1. 登入 AWS Management Console,開啟位於 https://console.aws.amazon.com/rds/ 的 Amazon RDS 主控台。

  2. 在主控台中,選擇 Instances (執行個體)

    Instance (執行個體) 窗格隨即出現。

  3. Instances (執行個體) 窗格中,選擇您想提升的僅供讀取複本。

    該僅供讀取複本將顯示為 Aurora MySQL 資料庫執行個體。

  4. Actions (動作) 中選擇 Promote read replica (提升僅供讀取複本)。

  5. 在確認頁面上,選擇 Promote read replica (提升僅供讀取複本)。

若要將僅供讀取複本升級為資料庫叢集,請使用 AWS CLI promote-read-replica-db-cluster 指令。

範例

對於LinuxmacOS、或Unix:

aws rds promote-read-replica-db-cluster \ --db-cluster-identifier mydbcluster

在Windows中:

aws rds promote-read-replica-db-cluster ^ --db-cluster-identifier mydbcluster

若要將僅供讀取複本升級至資料庫叢集,請呼叫「資料PromoteReadReplica庫叢集」。

對 Amazon Aurora MySQL 跨區域複本進行故障診斷

在以下您可以找到建立 Amazon Aurora 跨區域僅供讀取複本時可能遇到的常見錯誤訊息清單,以及如何解決指定的錯誤。

來源叢集 [資料庫叢集 ARN] 未啟用 binlog

若要解決此問題,請在來源資料庫叢集上開啟二進位日誌。如需詳細資訊,請參閱開始之前

來源叢集 [資料庫叢集 ARN] 沒有與寫入器同步的叢集參數群組

如果已更新 binlog_format 資料庫叢集參數,但尚未將資料庫叢集的主要執行個體重新開機,則會收到此錯誤。請將資料庫叢集的主要執行個體 (即寫入器) 重新開機並重試。

來源叢集 [資料庫叢集 ARN] 在此區域中已具有僅供讀取複本

對於任何 AWS 區域 中每個來源資料庫叢集,您最多可有五個屬於僅供讀取複本的跨區域資料庫叢集。如果特定 AWS 區域 中對某個資料庫叢集的僅供讀取複本數目已達到上限,則必須先刪除現有的僅供讀取複本,才能在該區域中建立新的跨區域資料庫叢集。

資料庫叢集 [資料庫叢集 ARN] 需要資料庫引擎升級,才能支援跨區域複寫

若要解決此問題,請將來源資料庫叢集中所有執行個體的資料庫引擎版本升級至最新的資料庫引擎版本,然後嘗試再次建立跨區域僅供讀取複本資料庫。