為 Aurora My 建立跨區域僅供讀取複本資料庫叢集SQL - Amazon Aurora

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

為 Aurora My 建立跨區域僅供讀取複本資料庫叢集SQL

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

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

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

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

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

使用 建立跨區域僅供讀取複本的 Aurora MySQL 資料庫叢集 AWS Management Console
  1. 登入 AWS Management Console 並在 開啟 Amazon RDS主控台https://console.aws.amazon.com/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 (資料庫執行個體類別)

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

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

    選擇,在目標中的另一個可用區域中建立新資料庫叢集的僅供讀取複本 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角色RDS,以允許 Amazon 為您與 Amazon CloudWatch Logs 通訊,或選擇預設,以為您RDS建立名為 的角色rds-monitoring-role。如需詳細資訊,請參閱使用增強型監控來監控作業系統指標

    精細程度

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

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

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

    如需 Aurora My 引擎更新的詳細資訊SQL,請參閱 Amazon Aurora 我的數據庫引擎更新 SQL

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

若要使用 建立 Aurora MySQL 資料庫叢集,該叢集是跨區域僅供讀取複本 CLI
  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 選項,自行指定和管理密碼。

    用於 Linux, macOS、 或 Unix:

    aws rds create-db-cluster \ --db-cluster-identifier sample-replica-cluster \ --engine aurora-mysql \ --engine-version 8.0.mysql_aurora.3.08.0 \ --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-mysql ^ --engine-version 8.0.mysql_aurora.3.08.0 ^ --replication-source-identifier arn:aws:rds:us-west-2:123456789012:cluster:sample-master-cluster

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

    用於 Linux, macOS、 或 Unix:

    aws rds create-db-cluster \ --db-cluster-identifier sample-replica-cluster \ --engine aurora-mysql \ --engine-version 8.0.mysql_aurora.3.08.0 \ --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-mysql ^ --engine-version 8.0.mysql_aurora.3.08.0 ^ --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 值。預先簽章URL的 URL包含對來源 中呼叫的create-db-cluster命令的簽章第 4 版簽章請求 AWS 區域。若要進一步了解 pre-signed-url選項,請參閱 AWS CLI 命令參考 create-db-cluster中的 。

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

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

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

    用於 Linux, macOS、 或 Unix:

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

    用於 Windows:

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

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

使用 建立跨區域僅供讀取複本的 Aurora MySQL 資料庫叢集 API
  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-mysql &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-mysql &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必須是可在包含要複寫之加密資料庫叢集 AWS 區域 的來源中執行之CreateDBClusterAPI操作的有效請求。KMS 金鑰識別符用於加密僅供讀取複本,且必須是對目的地有效的KMS金鑰 AWS 區域。若要自動產生預先簽章的 URL,請改用 AWS CLI create-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 C reateDBInstance動作,如下列範例所示。

    https://rds.us-east-1.amazonaws.com/ ?Action=CreateDBInstance &DBClusterIdentifier=sample-replica-cluster &DBInstanceClass=db.r5.large &DBInstanceIdentifier=sample-replica-instance &Engine=aurora-mysql &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-clusters AWS CLI 命令或 DescribeDBClusters RDSAPI操作來檢視 Amazon Aurora MySQL 資料庫叢集的跨區域複寫關係。於回應中,請參閱 ReadReplicaIdentifiers 欄位,以取得任何跨區域讀取複本資料庫叢集的資料庫叢集識別符。請參閱 ReplicationSourceIdentifier元素,了解 複寫來源來源來源資料庫叢集ARN的 。