備注
將要查看的是Azure Database for MySQL的新服務(wù)。若要查看經(jīng)典MySQL Database for Azure的文檔,請(qǐng)?jiān)L問此頁。
在Azure中,MySQL服務(wù)器工作負(fù)荷可以在托管的虛擬機(jī)基礎(chǔ)結(jié)構(gòu)即服務(wù)(IaaS)中運(yùn)行,或者作為托管的平臺(tái)即服務(wù)(PaaS)運(yùn)行。在IaaS和PaaS之間選擇時(shí),必須決定是要管理數(shù)據(jù)庫(kù)、應(yīng)用修補(bǔ)程序并進(jìn)行備份,還是要將這些操作委托給Azure。
做出決策時(shí),請(qǐng)考慮以下選項(xiàng):
Azure Database for MySQL。此選項(xiàng)是基于穩(wěn)定MySQL社區(qū)版的完全托管式MySQL數(shù)據(jù)庫(kù)引擎。此關(guān)系數(shù)據(jù)庫(kù)即服務(wù)(DBaaS)托管在Azure云平臺(tái)中,屬于PaaS行業(yè)類別。
借助Azure上MySQL的托管實(shí)例,可使用自動(dòng)修補(bǔ)、高可用性、自動(dòng)備份、彈性縮放、企業(yè)級(jí)安全性、合規(guī)性和治理、監(jiān)視和警報(bào)等內(nèi)置功能。否則,當(dāng)MySQL服務(wù)器位于本地或Azure VM中時(shí),這些內(nèi)置功能需要進(jìn)行大量配置。將MySQL用作服務(wù)時(shí),需要預(yù)先支付縱向或橫向擴(kuò)展選項(xiàng)的費(fèi)用才能在不中斷服務(wù)的情況下獲得更高的控制度。
單一服務(wù)器是一項(xiàng)完全托管的數(shù)據(jù)庫(kù)服務(wù),對(duì)數(shù)據(jù)庫(kù)自定義的要求最低。單一服務(wù)器平臺(tái)旨在以最少的用戶配置和控制來處理大多數(shù)數(shù)據(jù)庫(kù)管理功能,例如修補(bǔ)、備份、高可用性、安全性。此體系結(jié)構(gòu)經(jīng)過優(yōu)化,可在單個(gè)區(qū)域提供99.99%的可用性。單一服務(wù)器最適合用于云原生應(yīng)用程序,這些應(yīng)用程序旨在處理自動(dòng)修補(bǔ),而無需對(duì)修補(bǔ)計(jì)劃和自定義MySQL配置設(shè)置進(jìn)行精細(xì)控制。
Azure VM上的MySQL。此選項(xiàng)屬于IaaS行業(yè)類別。使用此服務(wù)可以在Azure云平臺(tái)上的托管虛擬機(jī)中運(yùn)行MySQL服務(wù)器。所有最新版本的MySQL都可以安裝在該虛擬機(jī)中。
比較Azure中的MySQL部署選項(xiàng)
下表列出了這些選項(xiàng)之間的主要差別:
選擇PaaS或IaaS的業(yè)務(wù)動(dòng)機(jī)
有多個(gè)因素可能會(huì)影響你決定選擇PaaS或IaaS來托管MySQL數(shù)據(jù)庫(kù)。
成本
成本縮減通常是確定用于托管數(shù)據(jù)庫(kù)的最佳解決方案的主要考慮因素。無論你是現(xiàn)金不足的創(chuàng)業(yè)公司,或是在預(yù)算嚴(yán)格受限的情況下運(yùn)作現(xiàn)有公司的團(tuán)隊(duì),都存在這種情況。本部分介紹Azure中適用于Azure Database for MySQL和Azure VM上的MySQL的計(jì)費(fèi)與許可基礎(chǔ)知識(shí)。
計(jì)費(fèi)
Azure Database for MySQL目前在多個(gè)層級(jí)中以服務(wù)的形式提供,它資源價(jià)格各不相同。所有資源都按固定費(fèi)率按小時(shí)計(jì)費(fèi)。有關(guān)目前支持的服務(wù)層級(jí)、計(jì)算大小和存儲(chǔ)量的最新信息,請(qǐng)參閱定價(jià)頁??梢詣?dòng)態(tài)調(diào)整服務(wù)層級(jí)和計(jì)算大小,以滿足應(yīng)用程序的不同吞吐量需求。你需要按一般的數(shù)據(jù)傳輸費(fèi)率支付Internet流量傳出費(fèi)用。
Azure使用Azure Database for MySQL自動(dòng)配置、修補(bǔ)和升級(jí)數(shù)據(jù)庫(kù)軟件。這些自動(dòng)化操作可以降低管理成本。此外,Azure Database for MySQL提供自動(dòng)備份功能。這些功能可幫助你大幅節(jié)省成本,尤其是存在大量的數(shù)據(jù)庫(kù)時(shí)。相比之下,對(duì)于Azure VM上的MySQL,可以選擇并運(yùn)行任何MySQL版本。無論你使用哪個(gè)MySQL版本,你都要為預(yù)配的VM、與數(shù)據(jù)關(guān)聯(lián)的存儲(chǔ)成本、備份、數(shù)據(jù)和日志存儲(chǔ)監(jiān)視以及所使用的特定MySQL許可證類型(如果有)的成本付費(fèi)。
Azure Database for MySQL針對(duì)任何類型的節(jié)點(diǎn)級(jí)中斷提供內(nèi)置高可用性,同時(shí)仍可為服務(wù)維護(hù)99.99%的SLA保證。但是,若要在VM中實(shí)現(xiàn)數(shù)據(jù)庫(kù)高可用性,請(qǐng)使用MySQL數(shù)據(jù)庫(kù)上提供的高可用性選項(xiàng),例如MySQL復(fù)制。使用支持的高可用性選項(xiàng)不會(huì)提供額外的SLA。但是,它可以讓你憑借額外的成本和管理開銷實(shí)現(xiàn)99.99%以上的數(shù)據(jù)庫(kù)可用性。
管理
對(duì)許多企業(yè)來說,決定過渡到到云服務(wù)的關(guān)鍵在于降低管理復(fù)雜度,因?yàn)檫@涉及到成本。
使用IaaS時(shí),Azure:
管理底層基礎(chǔ)結(jié)構(gòu)。
為基礎(chǔ)硬件和OS提供自動(dòng)修補(bǔ)。
使用PaaS時(shí),Azure:
管理底層基礎(chǔ)結(jié)構(gòu)。
為基礎(chǔ)硬件、OS和數(shù)據(jù)庫(kù)引擎提供自動(dòng)修補(bǔ)。
管理數(shù)據(jù)庫(kù)的高可用性。
自動(dòng)執(zhí)行備份并復(fù)制所有數(shù)據(jù)以提供災(zāi)難恢復(fù)。
默認(rèn)加密靜態(tài)數(shù)據(jù)和動(dòng)態(tài)數(shù)據(jù)。
監(jiān)視服務(wù)器并提供針對(duì)查詢性能見解和性能建議的功能
以下列表描述了每個(gè)選項(xiàng)的管理注意事項(xiàng):
使用Azure Database for MySQL可以持續(xù)管理數(shù)據(jù)庫(kù)。但是,不再需要管理數(shù)據(jù)庫(kù)引擎、操作系統(tǒng)或硬件??梢猿掷m(xù)管理的項(xiàng)的示例包括:
數(shù)據(jù)庫(kù)
登錄
索引優(yōu)化
查詢優(yōu)化
審核
安全性
此外,在另一個(gè)數(shù)據(jù)中心配置高可用性只需極少量的配置或管理,或者根本無需配置或管理。
使用Azure VM上的MySQL,可以完全掌控操作系統(tǒng)和MySQL服務(wù)器實(shí)例配置。使用VM,可以決定何時(shí)更新或升級(jí)操作系統(tǒng)和數(shù)據(jù)庫(kù)軟件,以及應(yīng)用哪些補(bǔ)丁。還可以決定何時(shí)安裝任何其他軟件,例如防病毒應(yīng)用程序。提供的某些自動(dòng)化功能可以大大簡(jiǎn)化修補(bǔ)、備份和高可用性??梢钥刂芕M的大小、磁盤數(shù)目及其存儲(chǔ)配置。有關(guān)詳細(xì)信息,請(qǐng)參閱Azure的虛擬機(jī)和云服務(wù)大小。
遷移到Azure的時(shí)機(jī)
當(dāng)開發(fā)人員工作效率和新解決方案的快速面市時(shí)間至關(guān)重要時(shí),Azure Database for MySQL是面向云的應(yīng)用程序的適當(dāng)解決方案。該服務(wù)提供類似于DBA的編程功能,非常適合云架構(gòu)師和開發(fā)人員,因?yàn)樗芙档凸芾淼讓硬僮飨到y(tǒng)和數(shù)據(jù)庫(kù)的需求。
如果你不想花費(fèi)時(shí)間和金錢獲取新的本地硬件,則可使用Azure VM上的MySQL,它是滿足以下條件的應(yīng)用程序的理想解決方案:需要對(duì)服務(wù)不支持的MySQL引擎進(jìn)行精細(xì)控制和自定義,或者需要訪問基礎(chǔ)OS。如果Azure Database for MySQL不合適,則此解決方案也很適合將現(xiàn)有的本地應(yīng)用程序和數(shù)據(jù)庫(kù)按原樣遷移到Azure。
由于無需更改呈現(xiàn)層、應(yīng)用層和數(shù)據(jù)層,重新架構(gòu)現(xiàn)有解決方案時(shí)可以節(jié)省時(shí)間和預(yù)算。你可以專注于將所有解決方案遷移到Azure,并執(zhí)行Azure平臺(tái)可能需要的某些性能優(yōu)化。