AWS Database Migration Service 常見問答集

一般問題

AWS Database Migration Service (AWS DMS) 是一項受管遷移和複寫服務,可協助您將資料庫和分析工作負載快速且安全地遷移至 AWS。來源資料庫在遷移期間能夠維持所有功能的運作,將倚賴資料庫之應用程式的停機時間降到最低。

AWS Database Migration Service 可以在最廣受採用的商業資料庫及開放原始碼資料庫之間來回存取、轉換及遷移您的資料。AWS Database Migration Service 支援同質遷移 (例如 Oracle 到 Oracle),也支援不同資料庫之間的異質遷移 (例如 Oracle 或 Microsoft SQL Server 到 Amazon Aurora)。

使用 AWS Database Migration Service,您還可以以低延遲的方式連續地將資料從受支援的來源複寫到受支援的目標。 例如,您可以從多個來源複寫到 Amazon Simple Storage Service (Amazon S3),以建置高度可用且可擴展的資料湖解決方案。

您還可以透過將資料串流至 Amazon Redshift,將資料庫合併到 PB 級資料倉儲。進一步了解受支援的來源和目標資料庫。

AWS Database Migration Service 的操作便捷且易於上手。多數資料複寫任務可在 10 分鐘內完成設定。

前往 AWS 管理主控台的 AWS Database Migration Service 區段,並進入開始遷移精靈。指定您的來源與目標端點,選取現有複寫執行個體或建立新的複寫執行個體,然後接受預設的結構描述映射規則或定義自己的轉換。完成精靈後,就會立即開始進行資料複寫。

AWS DMS 是遷移資料庫和分析工作負載的經濟實惠、低成本選擇。您只需支付複寫執行個體及任何額外日誌儲存的費用。資料傳輸是免費的。您可以在 DMS 定價頁面找到完整的定價詳細資訊。

AWS DMS Schema Conversion 可作為 DMS 的一部分免費使用。只需依所用的儲存付費。

在一般的簡易資料庫遷移流程中,您必須建立目標資料庫、遷移資料庫結構描述、設定資料複寫程序、啟動全部負載,接著變更資料擷取並套用,最後在目標資料庫與來源資料庫一致時,將生產環境切換為全新的資料庫。

唯一的差異在於最後一個步驟 (生產環境切換),持續資料複寫不需進行此步驟。資料複寫任務會持續執行,直到您進行變更或終止。

是。AWS 管理主控台會顯示多種 AWS Database Migration Service 指標。其提供資料複寫程序的端對端檢視,包括複寫管道中每個點的診斷和效能資料。

AWS Database Migration Service 也與其他 AWS 服務整合,例如 CloudTrailCloudWatch Logs。您還可以善用 AWS Database Migration Service APIAWS Command Line Interface (AWS CLI) 與現有的工具整合,或建置自訂監控工具以滿足特定需求。

AWS Database Migration Service 提供佈建 API,讓您可從開發環境直接建立複寫任務,或在白天排定的時間處理建立複寫任務的指令碼。

開發人員和資料庫管理員可透過服務 API 與 CLI,自動化複寫任務的建立、重新啟動、管理及終止。

受支援的來源和目標引擎

AWS Database Migration Service (DMS) 支援多種同質和異質資料複寫。

來源或目標資料庫之一 (或兩者) 需位於 RDS 中或 EC2 上。不支援在現場部署的資料庫之間進行複寫。

AWS DMS Serverless 支援常用的資料庫和分析服務,例如 Oracle、Microsoft SQL Server、PostgreSQL、MySQL、Amazon Redshift、Amazon RDS、Amazon Aurora 等。請參閱支援的引擎完整清單

AWS DMS Schema Conversion 支援這裡列出的一系列常用資料庫。

AWS Schema Conversion Tool (AWS SCT) 支援這裡列出的各種資料庫和資料倉儲轉換。

Schema Conversion

是,AWS DMS Schema Conversion (DMS SC) 是 AWS Database Migration Service 的一部分,可將 Oracle PL/SQL 與 SQL Server T-SQL 程式碼自動轉換為 Amazon RDS for MySQL 之 SQL 方言中的對等程式碼,或 PostgreSQL 中的對等 PL/pgSQL 程式碼。

當程式碼片段無法自動轉換為目標語言時,DMS SC 會清楚記錄需要從應用程式開發人員手動輸入的所有位置。 此外還提供一個名為 AWS Schema Conversion Tool (AWS SCT) 的可下載版本。

是,當您需要使用更加可定製的結構描述遷移程序時 (例如,當您正在遷移生產資料庫,並需要移動儲存程序和輔助資料庫物件時),可以使用 AWS DMS 的內建結構描述轉換功能來實現異構遷移。如果您正在執行同類遷移,替代選項包括下載 AWS Schema Conversion Tool,或使用來源引擎原生的結構描述匯出工具,例如:

  1. SQL Server Management Studio 的匯出和匯出精靈。
  2. Oracle 的 SQL Developer Database Export 工具,或使用 dbms_metadata 套件編寫匯出指令碼。
  3. MySQL 的 Workbench Migration Wizard.

AWS DMS 和 AWS SCT 可互相結合,以遷移資料庫和支援各種用途的持續複寫,例如填入資料湖和資料倉儲、同步系統等等。AWS SCT 可複製同質遷移的資料庫結構描述,然後將它們轉換用於異質遷移。結構描述可以在資料庫 (例如 Oracle 到 PostgreSQL) 之間或資料倉儲 (例如 Netezza 到 Amazon Redshift) 之間。

在空白目標建立結構描述之後,視資料量及/或支援的引擎而定,再使用 AWS DMS 或 AWS SCT 移動資料。習慣上會使用 AWS DMS 移動較小的關聯式工作負載 (小於 10 TB),而 AWS SCT 主要用來遷移大型資料倉儲工作負載。AWS DMS 支援持續複寫以保持目標與來源同步;AWS SCT 則不支援。

無伺服器

AWS Database Migration Service (AWS DMS) 會自動佈建、監控和擴展資源,讓資料庫和分析遷移至 AWS 變得更加容易且更具成本效益。使用 AWS DMS Serverless 時,您不再需要過度佈建遷移資源,也不必手動監控和擴展資源以進行連續資料複寫。AWS DMS Serverless 可將資源最佳化以滿足需求,因此您只需為使用的資源付費。這對於常見的使用案例 (例如連續資料複寫),以及不同來源和目標引擎之間複雜的異質遷移非常有用。

是,AWS DMS Serverless 可用於連續複寫。DMS Serverless 同時支援單一可用區和多可用區部署選項。

對於同質遷移,我們建議針對支援的引擎使用 DMS 內建原生工具,因其為大家熟悉的工具,且能進行順暢的遷移。您不需要佈建或監視遷移,而且僅需支付遷移持續時間使用的小時數費用。若要檢查支援的引擎,請前往 DMS 文件頁面

對於具有資料波動的異質遷移或連續資料複寫,建議您使用 AWS DMS Serverless,因其可自動監控和擴展資源以滿足需求,無需手動干預或過度佈建資源,從而能節省時間和成本。另一方面,隨需執行個體非常適合可預測、穩定的資料傳輸,因其可針對效能和成本調整至適當大小。如需支援的引擎,請參閱 AWS DMS Serverless 文件

是,適用於同質資料遷移的 AWS DMS 內建原生工具是無伺服器的。它不使用複寫執行個體,且會視需要自動監控和擴展遷移資源,以提供順暢的遷移。

遷移規劃

AWS DMS Fleet Advisor 是 AWS Database Migration Service (AWS DMS) 的一項免付費、全受管功能。它可自動執行遷移計畫,並協助您以最低限度的工作將資料庫和分析機群大規模遷移至雲端。 若要探索內部部署資料庫,您可以使用獨立的 AWS DMS Fleet Advisor 收集器,或 AWS Application Discovery Service (ADS) Agentless Collector 的資料庫和分析收集模組。

AWS DMS Fleet Advisor 適用於希望將大量資料庫和分析伺服器遷移到 AWS 的使用者。當您準備好將資料庫和分析工作負載遷移到 AWS 中的目標服務時,您應該使用 AWS DMS Fleet Advisor 來探索和分析您的線上事務處理 (OLTP) 和線上分析處理 (OLAP) 資料庫工作負載。Fleet Advisor 可讓您透過確定將來源資料庫遷移到 AWS 中的目標服務的複雜性來建置自訂遷移計劃。

AWS Application Discovery Service (ADS) 和 Migration Evaluator 面向廣泛的計運算和附加區塊儲存探索。遷移評估器供開始遷移之旅的客戶使用,這些客戶正在尋找 AWS 的資料驅動型商業案例。ADS 用於為 AWS Migration Hub 提供資料,以視覺化伺服器到伺服器的相依關係、建立應用程式群組和追蹤遷移進度。

針對大多數客戶,建議在可用的區域使用 AWS Application Discovery Service (ADS) Agentless Collector,原因在於其支援透過 AWS Migration Hub 進行伺服器遷移,並可讓您探索內部部署資料庫。針對其他所有區域,建議使用 AWS DMS Fleet Advisor 收集器。從獨立 AWS DMS Fleet Advisor 收集器與 AWS ADS Agentless Collector 收集的資料庫中繼資料使用率指標,皆可在 AWS DMS Fleet Advisor 中使用。

如果您有 VMware vCenter Server 環境,請使用 AWS ADS Agentless Collector,否則可將 AWS DMS Fleet Advisor 收集器安裝在 Microsoft Windows Server 2012 或更高版本上。

生命週期政策

AWS DMS 支援生命週期政策指定每個 DMS 版本的支援時間,從版本發佈到其不再受支援。 

支援生命週期政策旨在為每個 AWS DMS 版本發佈提供可預測且一致的支援指南。該指南將有利於客戶從戰略層面規劃其遷移和升級。

每個 DMS 版本的支援結束日期將於首次發行後 18 個月開始。如需所有現有 DMS 版本的最新排程,請前往 DMS 主控台的全新「支援生命週期政策」區段。 

每個 AWS DMS 版本版本的支援時間表將包含在關聯的 DMS 版本說明中,以及 DMS 主控台的全新「支援生命週期政策」區段中。如果您使用任何將於 90 天內結束支援的版本,您將在「複寫執行個體」下的引擎版本旁邊看到提醒。此外,AWS 將每季度向 DMS 執行個體擁有者傳送一次電子郵件提醒,告知他們正在執行的版本將在下一季度不再受支援。

該政策於 2023 年 1 月 1 日生效。無論自動升級設定如何,所有已達到發佈後 18 個月支援終止日期的執行個體均將自動升級到最新的偏好 DMS 版本。

DMS 服務將 DMS 的最新版本之一指定為偏好版本。此偏好版本是將用於自動升級的版本,是客戶建立新 DMS 執行個體的預設選擇。

僅在經過廣泛測試之後,新的 DMS 版本才會發佈。新版本發布後,DMS 服務團隊會密切監控可靠性指標和客戶意見回饋。一旦確信新版本沒有重大問題,我們將將該版本標記為新的偏好版本,在建立複製執行個體期間選擇版本時可找到該版本。

AWS DMS 不區分主要版本和次要版本發佈,也未計劃採用不同的支援政策。 

如果您啟用自動升級,您的複製執行個體將在可用時自動更新到最新的偏好版本。如果您選擇退出自動升級,一旦達到生命週期結束日期,AWS DMS 會將您的執行個體更新到最新的偏好版本,但會在升級前透過電子郵件和主控台通知傳達相關資訊。您可以在此 DMS 使用者指南中進一步了解如何使用 AWS 主控台或 AWS CLI 升級 DMS 引擎版本。

依據預設,複製執行個體中的自動升級設定處於開啟狀態。要使用 AWS CLI、DMS API 或主控台檢查此設定或執行任何修改,可以使用此修改複製執行個體指南

如果遷移任務中的資料表處於複製正在進行的變更階段 (CDC),則 AWS DMS 會在套用修補程式時暫停任務。然後,從套用修補程式時停止的位置繼續遷移。

如果套用修補程式時 AWS DMS 正在執行完全載入操作,則 AWS DMS 會重新啟動資料表的遷移。這些升級將在為複製執行個體指定的維護時段內進行。可以在使用 AWS DMS 維護時段指南中找到更多詳細資訊。

在 DMS 版本的生命週期結束日期過後,AWS DMS 可能會從主控台中移除發佈版本並將您的複製執行個體升級到最新的偏好版本,以便繼續提供支援。我們建議您盡快升級到最新的 AWS DMS 發佈版本。

您可以聯絡 AWS Developer Support 以取得更多資訊。