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

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

複製資料庫叢集快照

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

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

將自動化快照複製到另一個 AWS 帳戶是一個兩步驟的程序:首先,您會從自動化快照建立手動快照,然後將手動快照複製到另一個帳戶。

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

複製快照時的限制

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

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

  • 您可以在 AWS GovCloud (美國東部) 和 AWS GovCloud (美國西部) 之間複製快照,但您無法在這些 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 格式,且必須與 PreSignedUrl 參數SourceDBSnapshotIdentifier中的 相符。

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

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