複製資料庫叢集快照 - Amazon Neptune

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

複製資料庫叢集快照

使用 Neptune,您可以複製自動或手動的資料庫​叢集快照。複製快照之後,副本即為手動快照。

您可以在相同 AWS 區域內和跨 AWS 區域複製快照。

將自動快照複製到另一個 AWS 帳戶分成兩個步驟:首先,從自動快照建立手動快照,然後再將手動快照複製到另一個帳戶。

除了複製,您也可以將手動快照共用給其他 AWS 帳戶。如需更多詳細資訊,請參閱 共享資料庫叢集快照

複製快照時的限制

以下是複製快照時的一些限制:

  • 您可以在中國 (北京) 與中國 (寧夏) 之間複製快照,但無法在這些中國區域與其他 AWS 區域之間複製快照。

  • 您可以在 AWS GovCloud (US-East) 與 AWS GovCloud (US-West) 之間複製快照,但無法在這些 AWS GovCloud (US) 區域與其他 AWS 區域之間複製快照。

  • 如果您在目標快照變成可用之前刪除來源快照,則快照副本可能會失敗。刪除來源快照之前,請確認目標快照的狀態為 AVAILABLE

  • 每一帳戶的單一區域最多可有 5 個進行中的快照副本請求。

  • 根據涉及的區域和要複製的資料量而定,跨區域快照複製可能需要數小時才會完成。

    如果有大量跨區域快照複製請求來自某個來源 AWS 區域,在一些進行中的複製完成之前,Neptune 可能會將該來源 AWS 區域新提出的跨區域複製請求排入佇列。位於該佇列中的複製請求不會顯示進度資訊。只有在複製開始後才會顯示進度資訊。

保留資料庫叢集快照副本

Neptune 會刪除自動快照,如下所示:

  • 在其保留期結束時。

  • 當您停用資料庫叢集的自動快照時。

  • 當您刪除資料庫叢集時。

如果想要讓自動快照保留期間更長,請複製自動快照來建立手動快照,然後即可保留到您刪除為止。如果手動快照超出預設儲存空間,則其可能產生 Neptune 儲存成本。

如需備份儲存成本的詳細資訊,請參閱 Neptune 定價

複製快照時處理加密

您可以複製以 AWS KMS 加密金鑰所加密的快照。如果您複製加密快照,則快照的副本也必須加密。您可以使用與原始快照相同的 AWS KMS 加密金鑰來加密該副本,或者您可以指定不同的 AWS KMS 加密金鑰。

複製時,您不能加密未加密的資料庫叢集快照。

針對 Amazon Neptune 資料庫叢集快照,您也可以維持不加密資料庫叢集快照,改在還原時指定 AWS KMS 加密金鑰。還原的資料庫叢集會以指定的金鑰加密。

跨 AWS 區域複製快照

注意

此功能從 Neptune 引擎版本 1.0.2.1 版開始提供。

將快照複製到一個 AWS 區域時,若該區域並非來源快照的 AWS 區域,則第一個副本是完整的快照副本,即使您複製的是增量式快照,也是如此。完整的快照副本內含所有還原資料庫執行個體所需的資料及中繼資料。完成第一個快照副本之後,您可以將相同資料庫執行個體的增量快照,複製至相同 AWS 帳戶內的相同目的地區域。

增量式快照僅含相同資料庫執行個體最近一次拍攝快照之後所變更的資料。增量式快照複製速度較快,而且儲存成本較完整的快照複製低。加密與未加密快照均適用跨 AWS 區域的增量式快照複製。

重要

對於共用快照,不支援複製增量式快照。對於共用快照,即使位於相同區域內,所有副本都是完整快照。

根據涉及的 AWS 區域和要複製的資料量,跨區域快照複製可能需要數小時才會完成。

使用主控台複製資料庫叢集快照

如果來源資料庫引擎是 Neptune,則快照即為資料庫叢集快照。對於每個 AWS 帳戶,您一次可在每一 AWS 區域中最多複製五個資料庫叢集快照。支援複製加密和未加密的資料庫叢集快照。

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

若要取消已開始進行的複製操作,請在目標資料庫叢集快照處於 copying (複製中) 狀態時,刪除其快照。

下列程序適用於複製加密或未加密的資料庫叢集快照:

複製資料庫叢集快照
  1. 登入 AWS 管理主控台,然後開啟位於 https://console.aws.amazon.com/neptune/home 的 Amazon Neptune​ 主控台。

  2. 在導覽窗格中,選擇 Snapshots (快照)。

  3. 選取您要複製之資料庫叢集快照的核取方塊。

  4. 選擇 Actions (動作),然後選擇 Copy Snapshot (複製快照)Make Copy of DB Snapshot (複製資料庫快照) 頁面隨即顯示。

  5. New DB Snapshot Identifier (新的資料庫快照識別符) 中輸入資料庫叢集快照副本的名稱。

  6. 若要將快照中的標籤和值複製到快照的副本,請選擇 Copy Tags (複製標籤)

  7. Enable Encryption (啟用加密) 中,選擇以下其中一項:

    • 如果資料庫叢集快照未加密,且您不要將副本加密,請選擇 Disable encryption (停用加密)

    • 如果資料庫叢集快照未加密,但您想要將副本加密,請選擇 Enable encryption (啟用加密)。在此情況下,針對主金鑰指定用來加密資料庫叢集快照副本的 AWS KMS 金鑰識別符。

    • 如果資料庫叢集快照已加密,請選擇 Enable encryption (啟用加密)。在此情況下,您必須加密副本,所以已選取 Yes (是)。針對主金鑰,指定用來加密資料庫叢集快照副本的 AWS KMS 金鑰識別符。

  8. 選擇 Copy Snapshot (複製快照)

使用 AWS CLI 複製資料庫叢集快照

您可以使用 copy-db-cluster-snapshot AWS CLI 命令來複製資料庫快照。

如果您要將快照複製到新的 AWS 區域,請在新區域中執行此命令。

使用以下參數說明和範例來決定使用 AWS CLI 複製快照時要使用哪些參數。

  • --source-db-cluster-snapshot-identifier – 來源資料庫快照的識別符。

    • 如果來源快照和副本位於相同的 AWS 區域,請指定有效的資料庫快照識別符,例如 neptune:instance1-snapshot-20130805

    • 如果來源快照和副本位於不同的 AWS 區域,請指定有效的資料庫快照 ARN,例如 arn:aws:neptune:us-west-2:123456789012:snapshot:instance1-snapshot-20130805

    • 如果您要從共用的手動資料庫快照複製,此參數必須是共用資料庫快照的 Amazon 資源名稱 (ARN)。

    • 如果您要複製加密快照,此參數必須是來源 AWS 區域的 ARN 格式,且必須符合 SourceDBSnapshotIdentifier 參數中的 PreSignedUrl

  • --target-db-cluster-snapshot-identifier – – 加密資料庫快照之新副本的識別符。

  • --kms-key-id – – 加密資料庫快照的 AWS KMS 金鑰 ID。AWS KMS 金鑰 ID 是 AWS KMS 加密金鑰的 Amazon Resource Name (ARN)、AWS KMS 金鑰識別符或 AWS KMS 金鑰別名。

    • 如果您從 AWS 帳戶複製加密資料庫快照,您可以指定此參數的值,以使用新的 AWS KMS 加密金鑰來加密副本。如果您不指定此參數的值,則會使用與來源資料庫快照相同的 AWS KMS 金鑰,以加密資料庫快照的副本。

    • 您無法使用此參數,建立未加密快照的加密副本。嘗試這樣做將會產生錯誤。

    • 如果您將加密快照複製到不同的 AWS 區域,則必須針對目的地 AWS 區域指定 AWS KMS 金鑰。AWS KMS 加密金鑰是其建立所在 AWS 區域特有的,且您無法將來自某個 AWS 區域的加密金鑰用於另一個 AWS 區域。

  • --source-region - - 來源資料庫快照所在之 AWS 區域的 ID。如果您將加密快照複製到不同的 AWS 區域,則必須指定此選項。

  • --region - - 快照要複製到其中之 AWS 區域的 ID。如果您將加密快照複製到不同的 AWS 區域,則必須指定此選項。

範例 從未加密的快照到相同區域

下列程式碼會使用新名稱 mydbsnapshotcopy, 建立從 us-east-1 AWS 區域到 us-west-2 區域的快照複本。

對於 Linux、OS X 或 Unix:

aws neptune copy-db-cluster-snapshot \ --source-db-cluster-snapshot-identifier instance1-snapshot-20130805 \ --target-db-cluster-snapshot-identifier mydbsnapshotcopy

針對 Windows:

aws neptune copy-db-cluster-snapshot ^ --source-db-cluster-snapshot-identifier instance1-snapshot-20130805 ^ --target-db-cluster-snapshot-identifier mydbsnapshotcopy
範例 從未加密的快照跨區域

下列程式碼會使用新名稱 mydbsnapshotcopy, 建立從 us-east-1 AWS 區域到 us-west-2 區域的快照複本。在 us-west-2 區域中執行命令。

對於 Linux、OS X 或 Unix:

aws neptune copy-db-cluster-snapshot \ --source-db-cluster-snapshot-identifier arn:aws:neptune:us-east-1:123456789012:snapshot:instance1-snapshot-20130805 \ --target-db-cluster-snapshot-identifier mydbsnapshotcopy \ --source-region us-east-1 \ --region us-west-2

針對 Windows:

aws neptune copy-db-cluster-snapshot ^ --source-db-cluster-snapshot-identifier arn:aws:neptune:us-east-1:123456789012:snapshot:instance1-snapshot-20130805 ^ --target-db-cluster-snapshot-identifier mydbsnapshotcopy ^ --source-region us-east-1 ^ --region us-west-2
範例 從已加密的快照跨區域

下列程式碼範例會將加密的資料庫快照從 us-east-1 AWS 區域複製到 us-west-2 區域。在 us-west-2 區域中執行命令。

對於 Linux、OS X 或 Unix:

aws neptune copy-db-cluster-snapshot \ --source-db-cluster-snapshot-identifier arn:aws:neptune:us-west-2:123456789012:snapshot:instance1-snapshot-20161115 \ --target-db-cluster-snapshot-identifier mydbsnapshotcopy \ --source-region us-east-1 \ --region us-west-2 --kms-key-id my_us_west_2_key

針對 Windows:

aws neptune copy-db-cluster-snapshot ^ --source-db-cluster-snapshot-identifier arn:aws:neptune:us-west-2:123456789012:snapshot:instance1-snapshot-20161115 ^ --target-db-cluster-snapshot-identifier mydbsnapshotcopy ^ --source-region us-east-1 ^ --region us-west-2 --kms-key-id my-us-west-2-key