本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
遷移 SQL Server
在雲端的旅程中,您有多個選項可將 SQL Server 環境遷移至其中 AWS。成功的遷移係以產生 SQL Server 工作負載與其相依性的詳細目錄、識別驗證結構描述、掌握高可用性和災難復原 (HADR) 需求、評估效能目標及評估授權選項為基礎。此詳細目錄可協助您決定目標資料庫平台,並定義遷移選項。
在將 SQL Server 工作負載遷移到 時,您有許多選項可以考慮 AWS,每個工作負載都會產生最佳化的價格/效能、更直覺的使用者體驗,以及較低的 TCO。您可以選擇在下列項目上部署 SQL 伺服器:Amazon EC2
評估
若要實作成功的遷移,請務必評估現有的基礎設施,並了解您環境所需的主要功能。建議您在選擇遷移計畫之前,檢閱下列主要區域:
-
檢閱現有的基礎架構:透過使用在遷移探索階段收集的資料,檢閱現有的 SQL Server 基礎架構 (請參閱 Windows 環境探索
)。我們建議您使用 Microsoft 針對 SQL Server 基礎設施指定的大小 AWS。了解現場部署 SQL Server 執行個體目前的使用率,包括記憶體、CPU、IOPS 和輸送量,對於正確調整 SQL Server 執行個體的大小非常重要 AWS。 -
檢閱現有的授權 – 您可以利用互補AWS 的最佳化和授權評估 (AWS OLA)
,在 上建置遷移和授權策略 AWS。 AWS OLA 為您提供報告,以使用現有的授權權利建立部署選項的模型。這些結果可協助您探索跨彈性 AWS 授權選項的可用成本節省。 -
檢閱現有的 SQL Server 架構 – 如果您使用具有共用儲存或 SQL Server Always On 可用群組架構的 SQL Server 容錯移轉叢集,則了解目前的高可用性架構需求可協助您定義 SQL Server 部署選項
AWS。 -
開發備份策略 – 您可以使用 SQL Server 中的原生備份,將資料庫備份至雲端。您可以使用 Storage Gateway 將資料庫備份到 Amazon EBS、Amazon FSx for Windows File Server、Amazon FSx for NetApp ONTAP 和 Amazon S3。此外,您也可以透過使用快照方法備份 SQL Server 執行個體。如需 SQL Server 備份的詳細資訊,請參閱 AWS 方案指引中的 Amazon EC2 上的 SQL Server 備份和還原選項。
-
了解災難復原 (DR) 需求 – 如果您要將現有的 SQL Server 工作負載移至其中 AWS,則可以使用次要 AWS 區域 ,並使用 Transit Gateway 連接兩個區域 (這允許進行複寫)。您可以使用 SQL Enterprise 版內的 SQL Server 分散式可用性群組架構來設定 DR,或根據復原時間點目標 (RTO) 和復原點目標 (RPO) 需求使用日誌傳送。此外,您可以使用 AWS Elastic Disaster Recovery 做為主動/被動實作,將 DR 保留為容錯移轉環境。如需詳細資訊,請參閱 AWS 資料庫部落格上的架構 SQL Server 的災難復原 AWS:第 1 部分
文章。
調動
針對 SQL Server 工作負載,建議您考量三個主要的遷移選項
-
重新託管 (提升和轉移) – 這涉及將現場部署 SQL Server 資料庫遷移到 Amazon EC2 執行個體上的 SQL Server AWS 雲端。如果更快速的遷移至 AWS 是您的優先順序,此方法非常有用。
-
轉換 (提升和重塑) – 這涉及將內部部署 SQL Server 資料庫遷移到 中的 Amazon RDS for SQL Server
AWS 雲端。當您想要繼續使用 SQL Server,但想要擺脫無差別繁重工作 (例如,安裝、配置、修補、升級及設定高可用性) 的負擔時,相當適合進行平台轉換。如需 Amazon EC2、Amazon RDS 和 Amazon RDS Custom 上 SQL Server 的功能比較,請參閱在 Amazon EC2 和 Amazon RDS on 方案指引之間進行選擇。 AWS -
重構 (重新架構):此選項一般涉及透過使用開放原始碼資料庫和針對雲端建置的資料庫,來進行應用程式變更和現代化。在這個案例中,您會將內部部署 SQL 伺服器資料庫現代化,以使用 Amazon RDS for MySQL
、Amazon RDS for PostgreSQL 或 Amazon Aurora 。透過移動至開放原始碼資料庫,您可降低授權成本,並避免不必要的供應商鎖定期間和授權稽核。
遷移
當您將 SQL Server 工作負載遷移至 時 AWS,請考慮組態和工具的下列項目。
主機轉換
主機轉換具有同質性。當您想要在不變更資料庫軟體或組態的情況下,依原樣遷移 SQL Server 資料庫時,請選擇此方法。例如,在大規模的傳統遷移中,您可能想要快速移動以符合業務目標,並選擇針對大部分的應用程式進行主機轉換。
使用 Amazon EC2 遷移 SQL Server
如果您要遷移至 Amazon EC2,可以使用現有的 SQL Server 授權。此方法稱為使用自帶授權 (BYOL)。或者,您可以從 購買已包含授權 (LI) 執行個體 AWS。如需詳細資訊,請參閱 AWS Cloud Operations & Migrations 部落格上的 SQL BYOL 的成本最佳化使用 Amazon EC2 專用主機上包含的授權 Windows 執行個體
只有在您具有 Microsoft 軟體保證 (SA) 時,才可透過使用 BYOL,將 SQL Server 主機轉換至共用租用 (預設) EC2 執行個體。如果您的 SQL 授權沒有 SA,您可以重新託管至 Amazon EC2 專用主機
您可以利用各種方法,透過使用 SQL Server 功能 (例如,備份和還原、日誌傳送及 Always On 可用性群組),將 SQL Server 資料庫遷移至 Amazon EC2 執行個體。如果您要將單一資料庫或資料庫集遷移至 Amazon EC2 中執行的新 SQL Server 執行個體,則此類選項均適用。此類選項為資料庫原生選項,且取決於特定 SQL Server 版本和版本。除資料庫遷移之外,您也可能需要執行遷移物件的步驟 (例如,登入、工作、資料庫郵件及連結的伺服器)。
下列方法可用於在 上重新託管 SQL Server 資料庫 AWS:
您也可以使用 AWS Launch Wizard for SQL Server 來引導您在 Amazon EC2 上完成 Microsoft SQL Server 的大小、組態和部署。此程式同時支援 Amazon EC2 中的 SQL Server 單一執行個體和 HA 部署。
使用 Application Migration Service 遷移 SQL Server
AWS Application Migration Service
Linux 中的 SQL Server
SQL Server 資料庫引擎基本上會以類似方式在 Windows Server 和 Linux 中執行。但是,使用 Linux 時,特定工作會發生部分變更。Launch Wizard 可協助您調整此類變更,並設定高可用性解決方案。如果您具備內部 Linux 管理專業知識,則主機轉換至 Amazon EC2 Linux 為節省 Windows Server 授權成本的理想選擇。請考慮使用 Windows to Linux Replatforming Assistant for Microsoft SQL Server Databases 工具來自動化此程序。如需詳細資訊,請參閱將內部部署 Microsoft SQL Server 資料庫遷移至在 Amazon EC2 上執行 Linux 的 Microsoft SQL Server AWS on Prescriptive Guidance。
平台轉換
平台轉換是一種同質方法,非常適合透過使用全受管資料庫產品,來減少管理資料庫執行個體所花費的時間。Amazon RDS for SQL Server 中的全受管資料庫會限制您存取基礎作業系統、系統磁碟區或自訂驅動程式的安裝。如需詳細資訊,請參閱 Amazon RDS 文件中的 Amazon RDS for Microsoft SQL Server。如果您的使用案例需要全受管資料庫功能,或者如果您想要使用現有的 SQL Server 授權, 請考慮將 轉譯為 Amazon RDS Custom
「使用自有媒體」(BYOM) 選項適用於 Amazon RDS Custom for SQL Server。BYOM 可讓您使用自己的安裝媒體和授權,但授權必須符合 Microsoft 的授權行動性
下列方法適用於將 SQL Server 遷移至 Amazon RDS for SQL Server:
若要將 SQL Server 資料庫平台轉換,以在 Amazon RDS for SQL Server 中執行,請考慮使用 Amazon RDS for SQL Server 資源
重構
重構具有異質性。當您準備好重組、重寫和重新建構資料庫和應用程式時,請選擇此方法,以利用開放原始碼和built-for-the-cloud資料庫產品。如果您願意重構資料庫和個別應用程式,您可以將 SQL Server 工作負載現代化為 Amazon RDS for MySQL、Amazon RDS for PostgreSQL、Amazon Aurora MySQL 相容版本
Amazon RDS for MySQL 和 Amazon RDS for PostgreSQL 是適用於相應開放原始碼資料庫的全受管資料庫產品。Amazon Aurora 是針對雲端建置的關聯式資料庫管理系統 (RDBMS),具有完整的 MySQL 和 PostgreSQL 相容性。Aurora 配備容錯儲存系統,可提供商業級資料庫的效能和可用性,成本僅為十分之一。
您也可以使用 Amazon Aurora Serverless
若要將您的 SQL Server 資料庫重構為其中一個方案,請考慮使用 AWS Schema Conversion Tool (AWS SCT)
如果您的目標是加速應用程式和資料庫遷移至 AWS,請考慮使用 Babelfish for Aurora PostgreSQL。Babelfish 可讓原本針對 SQL Server 寫入的應用程式,以最少的程式碼變更方式搭配使用 Aurora。因此,您不再需要修改和移動至針對 SQL Server 2019 或更早版本開發的 Babelfish for Aurora PostgreSQL 應用程式,即可以更快速、風險更低且更具成本效益的方式進行重構。
請考量下列有關使用 Babelfish 進行遷移的資源:
-
使用 Babelfish 從 SQL Server 遷移至 Amazon Aurora
(AWS 資料庫部落格) -
使用 AWS SCT 評估報告準備 Babelfish 遷移
(AWS 資料庫部落格) -
使用 SSIS 和 Babelfish 從 SQL Server 遷移至 Aurora PostgreSQL
(AWS 資料庫部落格) -
使用 Babelfish 作為 ( 文件) 的目標 AWS Database Migration ServiceAWS Database Migration Service
其他資源
-
將 Microsoft SQL Server 資料庫遷移至 AWS 雲端(AWS 方案指引)
-
SQL Server on 的遷移和現代化策略 AWS
(AWS 部落格)