本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Neptune 中的資料庫複製
使用資料庫複製,您可以快速且經濟實惠地在 Amazon Neptune 中建立所有資料庫的複本。複製資料庫在第一次建立時只需最少的額外空間。資料庫複製使用寫入時複製通訊協定。無論在來源資料庫或複製資料庫上,在資料變更時會複製資料。您可以從相同的資料庫叢集建立多個複製。您也可以從其他複製建立額外的複製。如需複製時寫入通訊協定如何在 Neptune 儲存體內容中運作的詳細資訊,請參閱 寫入時複製通訊協定。
您可以在各種使用案例中使用資料庫複製,尤其是您不想要對生產環境產生影響的使用案例,如下所示:
實驗並評估變更的影響,例如結構描述變更或參數群組變更。
執行工作負載密集的操作,例如匯出資料或執行分析查詢。
在非生產環境中建立生產資料庫叢集的副本,以進行開發或測試。
使用 建立資料庫叢集的複製 AWS Management Console
登入 AWS 管理主控台,並在 https://console.aws.amazon.com/neptune/home
:// 開啟 Amazon Neptune 主控台。 在導覽窗格中,選擇 Instances (執行個體)。選擇您要建立其複製之資料庫叢集的主要執行個體。
選擇 Instance actions (執行個體動作),然後選擇 Create clone (建立複製)。
-
在 Create Clone (建立複製) 頁面上,輸入複製資料庫叢集主要執行個體的名稱,做為 DB instance identifier (資料庫執行個體識別符)。
如果想要的話,請對複製資料庫叢集設定任何其他設定。如需不同資料庫叢集設定的詳細資訊,請參閱 使用主控台啟動。
選擇 Create Clone (建立複製) 來啟動複製資料庫叢集。
使用 建立資料庫叢集的複製 AWS CLI
-
呼叫 Neptune restore-db-cluster-to-point-in-time AWS CLI 命令並提供下列值:
--source-db-cluster-identifier
– 要建立其複製的來源資料庫叢集的名稱。--db-cluster-identifier
– 複製資料庫叢集的名稱。--restore-type copy-on-write
–copy-on-write
值指出應該建立複製資料庫叢集。--use-latest-restorable-time
– 這會指定應使用最新可還原的備份時間。
注意
restore-db-cluster-to-point-in-time AWS CLI 命令只會複製資料庫叢集,而不會還原該資料庫叢集的資料庫執行個體。
下列 Linux/UNIX 範例會從
source-db-cluster-id
資料庫叢集建立複本,並將複本命名為db-clone-cluster-id
。aws neptune restore-db-cluster-to-point-in-time \ --region us-east-1 \ --source-db-cluster-identifier source-db-cluster-id \ --db-cluster-identifier db-clone-cluster-id \ --restore-type copy-on-write \ --use-latest-restorable-time
如果
\
行尾逸出字元取代為 Windows^
對等字元,則相同的範例適用於 Windows:aws neptune restore-db-cluster-to-point-in-time ^ --region us-east-1 ^ --source-db-cluster-identifier source-db-cluster-id ^ --db-cluster-identifier db-clone-cluster-id ^ --restore-type copy-on-write ^ --use-latest-restorable-time
限制
Neptune 中的資料庫複製具有下列限制:
您無法跨 AWS 區域建立複製資料庫。複製資料庫必須建立在與來源資料庫相同的區域中。
複製的資料庫永遠都會使用 Neptune 引擎版本的最新修補程式,而此引擎版本是由從其複製的資料庫所使用。即使來源資料庫尚未升級至該修補程式版本,也是如此。但是,引擎版本本身不會改變。
目前,您最多可在 Neptune DB 叢集的每個複本進行 15 次複製,包括以其他複製為基礎的複製。在達到該限制之後,您必須製作另一個資料庫副本,而不是複製它。不過,如果您建立新副本,最多也可以有 15 個複製。
目前不支援跨帳戶資料庫複製。
您可以提供不同的 virtual private cloud (VPC) 進行複製。不過,那些 VPC 中的子網路必須映射至相同的可用區域集。
用於資料庫複製的寫入時複製通訊協定
下列範例說明寫入時複製協定的運作方式。
複製之前的 Neptune 資料庫
來源資料庫中的資料存放於頁面。在下圖中,來源資料庫有四個頁面。

複製之後的 Neptune 資料庫
如下圖所示,在資料庫複製之後,來源資料庫中沒有任何變更。來源資料庫與複製資料庫都指向相同的四個頁面。不會實際複製任何頁面,所以不需要額外的儲存空間。

對來源資料庫進行變更時
在下列範例中,來源資料庫會對 Page
1
中的資料進行變更。系統不會寫入至原始 Page 1
,而是使用額外儲存空間建立新的頁面,稱為 Page 1'
。來源資料庫現在指向新的 Page 1'
,同時也指向 Page 2
、Page 3
和 Page 4
。複製資料庫繼續指向 Page 1
到 Page 4
。

對複製資料庫進行變更時
在下圖中,複製資料庫也做了變更,這次在 Page 4
中。不是寫入至原始 Page 4
,而是使用額外儲存空間建立新的頁面,稱為 Page 4'
。來源資料庫繼續指向 Page 1'
,同時也指向 Page 2
到 Page 4
,但複製資料庫現在會指向 Page 1
到 Page 3
,同時也指向 Page 4'
。

如第二個案例所示,在資料庫複製之後,在建立複製時不需要額外的儲存空間。不過,當來源資料庫與複製資料庫中發生變更時,只會建立已變更的頁面,如第三個及第四個案例所示。隨著來源資料庫與複製資料庫在一段時間後發生更多變更,您需要不斷增加更多的儲存空間來擷取並存放變更。
刪除來源資料庫
刪除來源資料庫不會影響與其相關聯的複製資料庫。複製資料庫會繼續指向來源資料庫先前所擁有的頁面。