決定移轉方法和工具
既然您已了解移轉概念、考量和工具,讓我們了解如何決定案例的最佳工具和方法。 我們建議從 VM 和內部部署進行所有移轉的 Azure MySQL 匯入 CLI,以及針對其他所有項目使用 DMS。 所有其他工具都是社群工具,可在前兩個工具無法支援移轉的地方使用。 下表可協助您根據目標挑選工具。
目標 | 工具 | 描述 | 優點 | 缺點 |
---|---|---|---|---|
從內部部署伺服器或 VM 快速且簡單的移轉路徑 | 適用於 MySQL 的 Azure 資料庫匯入 CLI | 將來源資料庫使用者所提供的實體備份檔案 (使用 Percona XtraBackup 取得) 還原至目標 MySQL 彈性伺服器 | Microsoft 移轉工具。 簡單工具 (單一 CLI 命令)。 大型工作負載的快速實體移轉。 不需要即時連線。 可設定複寫來準備線上移轉。 | 僅從內部部署和 VM 進行移轉,因為其需要 Percona Xtrabackup 備份檔案。 |
從任何裝載於任何位置 (包括 AWS RDS 和極光) 的來源快速線上和離線移轉 | Azure 資料庫移轉服務 (DMS) | 完全受控的服務旨在能從多個資料庫來源,順暢地移轉到 Azure 資料平台,將停機時間降到最低 (線上移轉)。 | Microsoft 移轉工具。 同時支援離線和線上移轉。 UI 型。 可重複的移轉範本。 支援資料、結構描述以及使用者帳戶和權限的移轉。 | 需要即時連線。 |
使用 MySQL 社群工具移轉大型工作負載 | mydumper 和 myloader |
下載並安裝命令列工具。 將資料平行從來源移至目標。 可以達到高速。 | 大型工作負載由於平行匯出和匯入進行快速移轉。 | 可能需要節流資料匯入。 |
使用 MySQL 原生工具進行線上移轉 | binlog |
將 MySQL 二進位記錄複寫從來源設定為目標。 即時複寫變更。 一旦複寫延遲為零後,請切換資料庫。 | 內建的複寫機制,也用來實作讀取複本。 | 較為手動和進階。 需要更多資源來儲存及處理資料 |
高度自訂的離線移轉 | mysqldump |
將來源資料庫的全部 (或部分) 匯出為 SQL 陳述式,並在目標伺服器中執行以移轉來源的資料。 | 高度彈性的內建工具。 選擇性地匯出及匯入物件。 | 手動: 大型工作負載的效能不佳。 |
半自動化離線移轉 | MySQL Workbench | 下載並安裝 UI 匯出和匯入工具。 | 半自動化;UI 型匯出和匯入 | 僅支援一般參數和選項 |