

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

# 虛擬資料提供者
<a name="virtual-data-provider"></a>

AWS Database Migration Service (DMS) 為結構描述轉換中的資料提供者提供虛擬模式。此功能可讓您執行結構描述轉換，而無需連線到目標資料庫、降低基礎設施成本，並提供遷移規劃的彈性。使用虛擬模式，您可以立即開始轉換工作，以在遞交資源之前規劃最佳遷移策略。您可以評估相容性、轉換和檢閱結構描述程式碼，甚至測試不同的目標選項。然後，您可以在準備好時連線到資料庫。虛擬模式支援與 AWS DMS 結構描述轉換相容的所有目標資料庫，包括 MySQL、PostgreSQL、Amazon Redshift 和 Amazon RDS for Db2。

## 建立虛擬資料提供者
<a name="create-virtual-data-provider"></a>

若要建立虛擬資料提供者，只要在建立資料提供者的表單中啟用虛擬模式即可。如需詳細資訊，請參閱[設定 DMS 結構描述轉換的資料提供者](https://docs.aws.amazon.com/dms/latest/userguide/getting-started-data-providers.html)。

## 虛擬資料提供者用量
<a name="virtual-data-provider-usage"></a>

若要使用虛擬資料提供者，請建立新的遷移專案或修改現有的遷移專案。然後將專案的目標資料提供者設定為您建立的虛擬資料提供者。

若要使用 Secret 和 IAM 角色的虛擬提供者來讀取該秘密的欄位，請使用授予 IAM 角色的任何秘密來成功設定遷移專案。

設定目標提供者之後，請選擇**結構描述轉換**索引標籤。然後選擇**啟動結構描述轉換**按鈕。等待專案啟動。

您現在可以將結構描述轉換與虛擬目標資料提供者搭配使用，就像使用實際目標資料提供者一樣。需要連線到實際目標資料庫的動作將會停用，但目標樹狀目錄將可使用**另存為 SQL**。

## 從虛擬資料提供者轉換到實際資料提供者
<a name="transition-virtual-to-real-data-provider"></a>

當您準備好繼續進行實際遷移時，您可以轉換到實際資料提供者 。

**若要從虛擬資料提供者轉換到實際資料提供者，請遵循下列步驟。**

1. 登入 AWS 管理主控台，然後開啟 DMS AWS 主控台。

1. 在導覽窗格中，請選擇**資料提供者**。然後選擇您要修改的資料提供者。

1. 前往**相關遷移專案** 一節，查看使用此虛擬資料提供者的所有遷移專案。

1. 選擇第一個相關聯的專案。

1. 選擇**結構描述轉換**索引標籤。

1. 檢查選項**詳細資訊區段** - **狀態**。

1. 如果狀態為**開啟**，且按鈕**關閉結構描述轉換**不會變成灰色，請選擇它並等待專案關閉。

1. 對所有剩餘的相關聯遷移專案重複上述步驟。

1. 確認沒有剩餘的開放專案。

1. 返回資料提供者，然後選擇**修改**。

1. 關閉**虛擬模式**。

1. 正確填入連線設定。連線參數取決於您的資料庫引擎。如需詳細資訊，請參閱[建立資料提供者](https://docs.aws.amazon.com/dms/latest/userguide/data-providers-create.html)。

1. 選擇**儲存變更**。
**注意**  
儲存變更之後，就無法重新開啟虛擬模式。

1. 返回 DMS AWS 主控台。

1. 在導覽窗格中，選擇**遷移專案**。然後選擇您要變更資料提供者的遷移專案。

1. 選擇 **Modify** (修改)。

1. 填入要用來連線至目標資料提供者的秘密。使用正確的秘密，其中包含連線至資料庫所需的登入資料。

1. 填入要用來讀取目標秘密的 IAM 角色。檢查此處指定的 IAM 角色是否正確、在連線登入資料秘密上被授予讀取，並且可供 AWS DMS 結構描述轉換服務使用。

1. 選擇**儲存變更**。

1. 選擇**結構描述轉換**索引標籤。

1. 選擇**啟動結構描述轉換**按鈕。

1. 等待專案啟動。

**重要**  
一旦您停用虛擬模式並儲存此變更資料提供者，此動作就無法復原。您需要提供資料提供者的實際資料庫連線詳細資訊，以及讓 Secret 和 IAM 角色在相關聯的遷移專案中存取 Secret。

在包含已傳輸資料提供者的專案一開始，您將會有轉換結果。只有下列動作可供使用：
+ **在節點結構描述**上 - 從資料庫重新整理。
+ **在資料庫物件**上 - 套用變更，然後儲存為 SQL。

**套用**動作會將轉換後的物件套用至實際資料庫。

從**資料庫動作重新整理**會從實際資料庫載入資料庫物件。任何未儲存的轉換物件都會遺失。