Share via


在 Azure 中選擇正確的 MySQL Server 選項

適用於:適用於 MySQL 的 Azure 資料庫 - 單一伺服器適用於 MySQL 的 Azure 資料庫 - 彈性伺服器

重要

適用於 MySQL 的 Azure 資料庫單一伺服器位於淘汰路徑上。 強烈建議您升級至適用於 MySQL 的 Azure 資料庫彈性伺服器。 如需移轉至適用於 MySQL 的 Azure 資料庫彈性伺服器的詳細資訊,請參閱適用於 MySQL 的 Azure 資料庫單一伺服器會發生什麼事?

透過 Azure,您的 MySQL 伺服器工作負載可以在託管的虛擬機器基礎結構即服務 (IaaS) 或裝載平臺即服務中執行 (PaaS)。 PaaS 有兩個部署選項,而且每個部署選項都有服務層級。 當您在 IaaS 和 PaaS 之間選擇時,必須決定是否要管理資料庫、套用修補程式、備份、安全性、監視和調整,或將這些作業委派給 Azure。

做出決定時,請考慮下列兩個選項:

  • 適用於 MySQL 的 Azure 資料庫。 此選項屬於 PaaS 的產業類別,並代表以穩定版本的 MySQL 社群版本為基礎的完全受控 MySQL 資料庫引擎。 此關係資料庫即服務 (DBaaS)裝載於 Azure 雲端平臺上,屬於 PaaS 的產業類別。 透過 Azure 上的 MySQL 受控實例,您可以使用內建功能,以自動化修補、高可用性、自動備份、彈性調整、企業級安全性、合規性和治理、監視和警示,在 MySQL Server 在內部部署或 Azure VM 中時需要大量設定。 使用 MySQL 即服務時,您可以隨用隨付,選擇相應增加或相應放大,以取得更大的控制,而不會中斷。 由 MySQL 社群版本提供 適用於 MySQL 的 Azure 資料庫,有兩種部署模式可供使用:

    • 彈性伺服器 是完全受控的生產環境就緒資料庫服務,其設計目的是為了更細微地控制及彈性,而不需要資料庫管理功能和組態設定。 彈性伺服器架構可讓使用者選擇單一可用性區域內的高可用性,以及跨多個可用性區域。 彈性伺服器提供更佳的成本優化控制,能夠停止/啟動伺服器和高載計算層,非常適合不需要持續完整計算容量的工作負載。 彈性伺服器也支援保留實例,可讓您節省高達 63% 的成本,這適用於具有可預測計算容量需求的生產工作負載。 此服務支援 MySQL 5.7 和 8.0 的社群版本。 這項服務目前已在各種 Azure 區域中正式推出。 彈性伺服器最適合用於生產工作負載的所有新開發和移轉,以 適用於 MySQL 的 Azure 資料庫 服務。

    • 單一伺服器 是完全受控的資料庫服務,專為最少的自定義而設計。 單一伺服器平臺的設計訴求是處理大部分的資料庫管理功能,例如修補、備份、高可用性和安全性,以及最少的用戶設定和控制。 此架構已針對單一可用性區域中99.99%可用性的內建高可用性進行優化。 它支援 MySQL 5.6(已淘汰)、5.7 和 8.0 的社群版本。 這項服務目前已在各種 Azure 區域中正式推出。 單一伺服器最適合 已利用單一伺服器的現有應用程式。 建議針對所有新的開發或移轉選擇彈性伺服器。

  • Azure VM 上的 MySQL。 此選項屬於 IaaS 的產業類別。 使用此服務,您可以在 Azure 雲端平臺上的受控虛擬機內執行 MySQL Server。 您可以在虛擬機器上安裝所有最新版本和版本的 MySQL。

比較 Azure 中的 MySQL 部署選項

下表列出這些選項之間的主要差異:

屬性 適用於 MySQL 的 Azure 資料庫
單一伺服器
適用於 MySQL 的 Azure 資料庫
彈性伺服器
Azure VM 上的 MySQL
一般
正式發行 正式推出 正式推出 正式推出
服務等級協定 (SLA) 99.99% 可用性 SLA 99.99% 使用 可用性區域 99.99% 使用 可用性區域
基礎 O/S Windows Linux 使用者管理
MySQL 版本 社群版 社群版 Community 或 Enterprise Edition
MySQL 版本支援 5.6(已淘汰),5.7 和 8.0 5.7 和 8.0 任何版本
應用程式共置的可用性區域選取 No .是 Yes
連接字串 中的用戶名稱 <user_name>@server_name. 例如,mysqlusr@mypgServer 只要用戶名稱。 例如,mysqlusr 只要用戶名稱。 例如,mysqlusr
計算與 儲存體 調整
計算層 基本、一般用途、記憶體優化 高載、一般用途、記憶體優化 高載、一般用途、記憶體優化
計算調整 支援 (不支援從 和 調整至基本層 支援 支援
儲存體大小 5 GiB 到 16 TiB 20 GiB 至 16 TiB 32 GiB 至 32,767 GiB
在線 儲存體 調整 支援 已支援 不支援
自動記憶體調整 支援 已支援 不支援
IOP 擴充 不支援 支援 不支援
成本最佳化
保留實例定價 支援 支援 支援
停止/啟動伺服器以進行開發 伺服器最多可以停止七天 伺服器最多可以停止 30 天 支援
低成本高載 SKU 不支援 支援 支援
網路/安全性
網路連線 - 具有伺服器防火牆的公用端點。
- 具有 Private Link 支援的私人存取。
- 具有伺服器防火牆的公用端點。
- 具有 Private Link 支援的私人存取。
- 具有 虛擬網絡 整合的私人存取。
- 具有伺服器防火牆的公用端點。
- 具有 Private Link 支援的私人存取。
SSL/TLS 默認會啟用 TLS v1.2、1.1 和 1.0 的支援 默認會啟用 TLS v1.2、1.1 和 1.0 的支援 支援 TLS v1.2、1.1 和 1.0
待用數據加密 支援客戶自控金鑰 (BYOK) 支援服務受控金鑰 不支援
Microsoft Entra 驗證 支援 已支援 不支援
適用於雲端的 Microsoft Defender 支援 Yes .是 No
伺服器稽核 支援 支援 使用者管理
修補和維護
操作系統修補 自動 自動 由使用者管理
MySQL 次要版本升級 自動 自動 由使用者管理
MySQL 就地主要版本升級 支援從 5.6 到 5.7 不支援 使用者管理
維修控制 系統管理 客戶管理的 由使用者管理
維護時間範圍 隨時在 15 小時範圍內 1 小時視窗 由使用者管理
計劃性維護通知 三天 五天 由使用者管理
高可用性
高可用性 內建HA (不含熱待命) 內建HA (不含熱待命)、具有熱待命的相同區域和區域備援HA 由使用者管理
區域備援 不支援 支援 支援
待命區域放置 不支援 支援 支援
Automatic failover 是 (旋轉另一部伺服器) Yes 使用者管理
使用者起始的強制故障轉移 No Yes 使用者管理
透明應用程式故障轉移 Yes Yes 使用者管理
複寫
支援讀取複本 Yes Yes 使用者管理
支援的讀取複本數目 5 10 使用者管理
複寫模式 非同步 非同步 使用者管理
讀取複本的 Gtid 支援 支援 支援 使用者管理
跨區域支援 (異地複寫) Yes 不支援 使用者管理
混合式案例 支援 數據傳入複寫 支援 數據傳入複寫 使用者管理
支援數據傳入複寫 支援 不支援 使用者管理
數據輸出複寫 不支援 支援 支援
備份和復原
自動備份 Yes .是 No
備份保留 7-35 天 1-35 天 使用者管理
長期保留備份 使用者管理 使用者管理 使用者管理
匯出備份 支援使用邏輯備份 支援使用邏輯備份 支援
將時間點還原功能還原至保留期間內的任何時間 Yes Yes 使用者管理
快速還原點 No .是 No
在不同區域還原的能力 不支援 Yes Yes
還原至不同 VNet 的能力 No .是 Yes
還原至不同區域的能力 是 (異地備援) 是 (異地備援) 使用者管理
能夠還原已刪除的伺服器 Yes .是 No
災害復原
跨 Azure 區域的DR 使用跨區域讀取複本、異地備援備份 使用異地備援備份 使用者管理
Automatic failover No 不支援 No
可以使用相同的 r/w 端點 No 不支援 No
監視
Azure 監視器整合和警示 支援 支援 使用者管理
監視資料庫作業 支援 支援 使用者管理
查詢效能深入解析 支援 支援 (使用活頁簿) 使用者管理
伺服器記錄 支援 支援 (使用診斷記錄) 使用者管理
稽核記錄 支援 支援 支援
錯誤記錄 不支援 支援 支援
Azure Advisor 支援 支援 不支援 不支援
外掛程式
validate_password 不支援 在預覽階段 支援
caching_sha2_password 不支援 在預覽階段 支援
開發人員生產力
車隊管理 支援 Azure CLI、PowerShell、REST 和 Azure Resource Manager 支援 Azure CLI、PowerShell、REST 和 Azure Resource Manager 使用 Azure CLI、PowerShell、REST 和 Azure Resource Manager 支援 VM
Terraform 支援 支援 支援 支援
GitHub 動作 支援 支援 使用者管理

選擇 PaaS 或 IaaS 的商業動機

有幾個因素會影響您是否選擇 PaaS 或 IaaS 來裝載 MySQL 資料庫。

成本

成本降低通常是決定裝載資料庫的最佳解決方案的主要考慮。 不論您是一家幾乎沒有現金的初創公司,還是處於嚴格預算限制之下運作的已建立公司團隊,都是如此。 本節說明 Azure 中的計費和授權基本概念,因為它們適用於 Azure VM 上的 適用於 MySQL 的 Azure 資料庫 和 MySQL。

計費

適用於 MySQL 的 Azure 資料庫 目前以不同資源價格的數個層級提供作為服務。 所有資源都會以固定費率每小時計費。 如需目前支援之服務層級、計算大小和記憶體金額的最新資訊,請參閱 定價頁面。 您可以動態調整服務層級和計算大小,以滿足應用程式的不同輸送量需求。 您需支付定期 數據傳輸費率的傳出因特網流量費用。

透過 適用於 MySQL 的 Azure 資料庫,Microsoft 會自動設定、修補及升級資料庫軟體。 這些自動化動作可降低您的系統管理成本。 此外,適用於 MySQL 的 Azure 資料庫 具有自動備份功能。 這些功能可協助您節省大量成本,特別是當您有許多資料庫時。 相反地,使用 Azure VM 上的 MySQL,您可以選擇並執行任何 MySQL 版本。 無論您使用何種 MySQL 版本,您都需支付布建的 VM、與數據相關聯的記憶體成本、備份、監視數據和記錄記憶體,以及所使用的特定 MySQL 授權類型成本(如果有的話)。

適用於 MySQL 的 Azure 資料庫 提供節點層級中斷的內建高可用性,同時維護服務的 99.99% SLA 保證。 不過,針對 VM 內的資料庫高可用性,您可以使用 MySQL 資料庫上可用的高可用性選項,例如 MySQL 複寫。 使用支援的高可用性選項不提供額外的 SLA。 但它可讓您以額外的成本和系統管理額外負荷達到超過99.99%的資料庫可用性。

如需詳細資訊,請參閱下列文章:

系統管理

對許多企業而言,決定轉換至雲端服務,卸載複雜的系統管理和降低成本一樣重要。

使用 IaaS、Microsoft:

  • 管理基礎結構。
  • 自動修補基礎硬體和作業系統。

透過 PaaS,Microsoft 可以:

  • 管理基礎結構。
  • 自動修補基礎硬體、作業系統和資料庫引擎。
  • 管理資料庫高可用性。
  • 自動執行備份及複寫所有資料以提供災害復原。
  • 預設加密待用資料和移動中的資料。
  • 監視您的伺服器,並提供查詢效能深入解析和效能建議的功能

下列清單說明每個選項的系統管理考慮:

  • 透過 適用於 MySQL 的 Azure 資料庫,您可以繼續管理資料庫。 但您不再需要管理資料庫引擎、操作系統或硬體。 您可以繼續管理的項目範例包括:

    • 資料庫
    • 登入
    • 索引微調
    • 查詢微調
    • 稽核
    • 安全性

    此外,將高可用性設定至另一個數據中心需要最少的設定或管理。

  • 透過 Azure VM 上的 MySQL,您可以控制作業系統和 MySQL 伺服器實例組態。 您決定何時使用 VM 更新或升級作業系統和資料庫軟體,以及要套用的修補程式。 您也可以選擇何時安裝任何其他軟體,例如防毒應用程式。 提供一些自動化功能來簡化大幅修補、備份和高可用性。 您還可以控制 VM 的大小、磁碟數目及其儲存體設定。 如需詳細資訊,請參閱 適用於 Azure 的虛擬機和雲端服務大小。

移至 Azure 的時間

  • 當開發人員生產力和快速上市新解決方案時,適用於 MySQL 的 Azure 資料庫 是雲端設計應用程式的正確解決方案。 使用 DBA 之類的程式設計功能,服務適合雲端架構設計人員和開發人員,因為它降低了管理基礎操作系統和資料庫的需求。

  • 當您想要避免取得新內部部署硬體的時間和費用時,Azure VM 上的 MySQL 是需要服務不支援之 MySQL 引擎細微控制和自定義或需要存取基礎 OS 的應用程式的正確解決方案。 此解決方案也適合將現有的內部部署應用程式和資料庫移轉至 Azure,以防 適用於 MySQL 的 Azure 資料庫 狀況不佳的情況。

因為不需要變更簡報、應用程式和數據層,因此您可以節省重新架構現有解決方案的時間和預算。 相反地,您可以專注於將所有解決方案移轉至 Azure,並解決 Azure 平臺可能需要的一些效能優化。

下一步