什麼是 Azure SQL Database?

適用於:Azure SQL 資料庫

本文提供 Azure SQL 資料庫的概觀,其作為完全受控的平台即服務 (PaaS) 資料庫引擎,無須經過使用者,即可處理大部分的資料庫管理功能,例如升級、修補、備份及監視。

注意

免費試用 Azure SQL 資料庫,每月取得 100,000 虛擬核心秒數的無伺服器運算和 32 GB 的儲存體。

有了 Azure SQL Database,您可為 Azure 中的應用程式與解決方案建立高度可用且高效能的資料儲存層。

  • Azure SQL Database 始終運行於最新穩定版本的 SQL 資料庫引擎 及已修補的作業系統上。
  • Azure SQL Database 提供企業級的可用性 SLA,當實施區域冗餘時,SLA 會更高。
  • Azure SQL Database 是一個多模型資料庫,你可以儲存並處理多種格式的資料,包括關聯式與非關聯式資料,如向量、圖形、JSON、XML、空間資料及鍵值對。 你可以透過現代雲端應用避免多平台和多語言的複雜性。
  • Azure SQL Database 超大規模服務層級(推薦)提供價格與效能的最佳組合,且無 SQL 授權費,且可擴展性最高可達 128 TB,包含無伺服器運算選項。

在 Azure SQL Database 中,您可以使用先進的查詢處理功能,例如高效能記憶體內技術智慧查詢處理。 事實上,SQL Server 最新的功能通常先釋出給 Azure SQL Database,之後再推出 SQL Server 版本。

你可以享有最新的 SQL Server 功能,無須負擔修補程式或升級的額外作業負荷,而且這些功能已在 Azure 數百萬個資料庫中獲得驗證。 Azure SQL Database 是一個完全受控的服務,內建高可用性、備份及其他常見維護作業。 Microsoft 可處理 SQL 和作業系統程式碼的所有修補和更新。 您不需要管理基礎結構。 Azure SQL Database內建的平台即服務(PaaS)功能,讓您能專注於對企業至關重要的領域專屬資料庫管理與優化活動。

購買方式

SQL Database 提供下列購買模型:

  • 以虛擬核心為基礎的購買模型可供選擇虛擬核心數目、記憶體數量,以及儲存體數量和速度。 基於 vCore 的購買模式也允許你使用 Azure Hybrid Benefit for SQL Server,獲得非超大規模資料庫 SQL Server 授權分配的折扣。 超大規模資料庫無法從 Azure Hybrid Benefit 受益,因為 Hyperscale 沒有獨立的 SQL 資料庫引擎 授權費用。
  • 以 DTU 為基礎的購買模型提供三個服務層級中的計算、記憶體和 I/O 資源混合,以支援輕量型到重量型的資料庫工作負載。 各層內的計算大小分別提供這些資源的不同混用方式,而且您可以為其新增額外的儲存體資源。

服務等級

以虛擬核心為基礎的購買模型提供三個服務層:

  • 大規模 服務層級(建議)是為大多數商業工作負載設計的。 超大規模資料庫透過可獨立調整的計算和儲存體資源,提供絕佳的彈性和高效能。 它藉由高可用性複本提供最高的故障復原能力。 Hyperscale 也在任何 Azure 資料中心提供唯讀異地複本,以及最多 30 個唯讀具名複本,以分擔大量唯讀分析工作負載,包括讀取密集型代理式工作負載。
  • 業務關鍵服務層級是專為具有高交易率和低延遲 I/O 需求的 OLTP 應用程式所設計。 它透過使用多個孤立的複製體,提供高故障韌性。
  • 通用服務層級專為需求較低的工作負載而設計。 其提供以預算為導向且平衡的計算與儲存體選項。

以 DTU 為基礎的購買模型提供三個服務層級:

  • 進階服務層級是針對具有高交易速率和低延遲 I/O 需求的 OLTP 應用程式所設計。 透過使用多個獨立的副本,它提供最強的故障復原能力。
  • 標準服務層級專為需求較低的工作負載而設計。 其提供以預算為導向且平衡的計算與儲存體選項。
  • Basic 服務層級是為需求最低的工作負載而設計的。 它為具有最低效能需求的小型應用程式提供符合成本效益的解決方案。

計算層

以虛擬核心為基礎的購買模型會針對 Azure SQL 資料庫提供兩個不同的計算層 - 佈建的計算層和無伺服器計算層。 以 DTU 為基礎的購買模型僅提供配置的計算資源階層。

  • 已佈建運算層級:提供特定數量的運算資源,無論工作負載活動為何,都會持續佈建,並按已佈建的運算資源用量以固定每小時價格計費。
  • 無伺服器計算層:會根據工作負載活動和每秒使用的計算量計費,自動調整計算資源。
    • 無伺服器運算層可於 vCore 購買模式、通用服務及超大規模服務層級中提供。

部署模型

Azure SQL Database 為資料庫提供下列部署選項:

  • 單一資料庫代表完全受控的隔離資料庫。 如果有需要單一可靠資料來源的現代化雲端應用程式和微服務,則可使用此選項。 單一資料庫類似於 SQL 資料庫引擎 中的包含資料庫
  • 彈性集區是具有一組共用資源 (例如 CPU 或記憶體) 的單一資料庫集合。 單一資料庫可以移入和移出彈性儲存池。

可擴充的效能和資源池

您可定義指派的資源數量。

  • 使用單一資料庫,每個資料庫都彼此隔離且可移植。 每個資料庫都有其保證的運算、記憶體和儲存資源數量。 你指派給資料庫的資源是專門用於該資料庫的,不會與其他 Azure 資料庫共享。 您可動態擴大和縮小單一資料庫資源。 單一資料庫選項提供不同的計算、記憶體和儲存體資源,以滿足不同需求。 例如,您可取得 1 到 128 個虛擬核心,或 32 GB 到 4 TB。 HyperScale 服務層級可讓您擴展至 128 TB,並具備快速備份和還原功能。
  • 使用彈性集區時,您可指派供集區中所有資料庫共用的資源。 為了最大化資源使用並節省成本,你可以建立一個新的資料庫,或將現有的單一資料庫移入資源池。 此選項也可供動態擴大和縮小彈性集區資源

你可以在 一般服務 層級中,以低成本每月在一個小型單一資料庫上建立你的第一個應用程式。 之後可隨時透過手動方式或程式設計,將服務層級變更為業務關鍵超大規模資料庫服務層級,以滿足解決方案需求。 您可以在不影響應用程式或客戶的情況下調整效能。 動態調整規模可讓您的資料庫以透明的方式回應快速變化的資源需求。 您只需在需要時支付所需資源的費用。

動態調整規模自動調整規模不同。 自動調整規模是指服務根據準則來自動調整規模,而動態調整規模則允許在不停機的狀況下手動調整規模。 單一資料庫選項支援手動的動態調整規模,但不支援自動調整。 如需更自動化的體驗,請考慮下列替代方案:

觀看Azure SQL 資料庫基本概念系列中的這段影片,獲得如何調整資料庫規模的簡短概觀:

可將資源使用量最大化的彈性集區

對許多企業和應用程式而言,建立單一資料庫,並依需求提高或降低效能,通常就已足夠,尤其是在使用模式相對可預測的情況下。 無法預測的使用模式可能會使得難以管理成本和商務模型。 彈性池解決 了這個問題。 您可將效能資源配置給集區,而非個別資料庫。 然後針對集區的整體效能資源 (而非單一資料庫效能) 付費。

顯示基本、標準和高級選項中彈性集區的圖表。

使用彈性集區,您就不必隨著資源的需求波動而專注於調高或調低資料庫效能。 集區資料庫會視需要取用彈性集區的效能資源。 集區資料庫會取用集區的資源,但不會超過其限制,因此成本可在個別資料庫使用情形無法預測的狀況下維持可預測性。

您可將資料庫新增至集區並從中移除,並將應用程式從數個資料庫擴充至數千個,且全都在可掌控的預算內。 您也可以控制集區中資料庫可用的資源下限和上限,以確保集區中不會有任一資料庫使用所有的集區資源,且每個集區資料庫都有保證的最低資源數量。 若要深入了解使用彈性集區之軟體即服務 (SaaS) 應用程式的設計模式,請參閱採用 SQL Database 的多組織用戶共享 SaaS 應用程式設計模式

指令碼可協助您監視及調整彈性集區的規模。 如需範例,請參閱使用 PowerShell 在 Azure SQL Database 中監視和調整彈性集區

混合使用單一資料庫與集區資料庫

您可混合使用單一資料庫與彈性集區,並變更單一資料庫和彈性集區的服務層級來適應情況。 您也可以使用 SQL Database 來混合並搭配其他 Azure 服務,以滿足獨特應用程式的設計需求、有效運用成本和資源,且產生新的商機。

廣泛的監視和警示功能

Azure SQL Database 提供進階監視和疑難排解功能,可協助更深入解析工作負載特性。 這些功能和工具包括:

  • 最新版本 SQL 資料庫引擎 內建的監控功能。 這些工具幫助您發現即時效能洞察。
  • Azure 提供的 PaaS 監視功能,可供監視大量的資料庫執行個體並為其進行疑難排解。
  • 資料庫觀察器 (預覽版) 可進行深入且低延遲的即時與歷史資料監控,並提供 Azure SQL 資源的單一視窗檢視。

查詢存放區是內建的 SQL Server 監視功能,可即時記錄查詢效能,並可供找出潛在的效能問題和最耗用資源的資源取用者。 自動調整和建議會針對效能下降的查詢以及遺漏或重複的索引提供建議。 SQL Database 中的自動調整可供手動套用指令碼來修正問題,或讓 SQL Database 套用修正程式。 SQL Database 也可測試並驗證修正程式是否提供一些好處,並根據結果保留或還原變更。 除了查詢資料存放區和自動微調功能以外,您還可使用標準 DMV 和 XEvent 來監控工作負載效能。

您可以使用 SQL Database 的內建效能監視警示功能,有效率地監視數百個資料庫的狀態。 透過這些工具,你可以根據目前或預期的績效需求,快速評估擴大或縮小規模的影響。 此外,SQL Database 可發出計量和資源記錄,以供更輕鬆地進行監視。 您可以將 SQL Database 設定為將資源使用量、背景工作與工作階段及連線儲存到下列其中一項 Azure 資源:

  • Azure 儲存體:用於封存大量遙測,價格實惠。
  • Azure 事件中樞:用於整合 SQL Database 的遙測與自訂監視解決方案或實時管線。
  • Azure 監視器記錄:用於具有報告、警示及風險降低功能的內建監視解決方案。

Azure 監視架構的圖表。

可用性能力

Azure SQL Database 幫助您的企業在中斷期間持續運作。 在傳統的本地 SQL Server 環境中,通常會在本地設置至少兩台機器。 這些機器擁有精確且同步維護的資料副本,以防止單一機器或元件故障。 這種環境提供高可用性,但無法防範影響資料中心的天災。

災難復原要求災難性事件在地理上足夠局部,使得另一台或一組擁有你資料副本的機器不受影響。 在 SQL Server 中,你可以使用以非同步模式運行的 Always On 可用性群組,將資料複製到地理上分離的 SQL Server 實例。

進階和業務關鍵服務層級中的資料庫已執行與可用性群組的同步處理類似的功能。 較低服務層級中資料庫則使用不同但對等的機制,以透過儲存體提供備援。 內建邏輯有助於提供保護來防止單一電腦失敗。 異地複寫活動功能可保護您的資料庫,防止大範圍的地域中斷。

Azure 可用性區域會嘗試提供保護來防止單一區域內單一資料中心建築物的中斷。 它可以幫助防止建築物的電力或網路損失。 在 SQL 資料庫中,您會將不同的複本放在不同的可用區域中(實際上是在不同的建築物)。

事實上,由 Microsoft 受控資料中心全球網路提供的 Azure 服務等級協定 (SLA),可協助讓應用程式 24 小時全年無休地運作。 Azure 平台可完全管理每個資料庫,並保證任何資料都不會遺失及高度的資料可用性。 Azure 會自動處理修補、備份、複寫、失敗偵測、基礎潛在硬體、軟體或網路故障、部署錯誤修正、故障切換、資料庫升級以及其他維護工作。 隔離計算和儲存圖層可達成標準可用性。 整合單一節點上的計算和儲存體以獲取效能,然後實作類似 Always On 可用性群組的技術,則可達成進階可用性。 如需 Azure SQL Database 高可用性功能的完整討論,請參閱 SQL Database 可用性

重要

欲了解 Azure SQL Database、SQL Server 與 Azure SQL 受控執行個體 之間的功能差異,以及不同 Azure SQL Database 選項間的差異,請參閱 SQL Database 功能

此外,SQL Database 還提供內建的商務持續性和全球可擴縮性功能。 這些功能包括:

  • 自動備份

    SQL Database 會自動執行資料庫的完整、差異及交易記錄備份,以供您還原至任何時間點。 針對單一資料庫和集區資料庫,您可設定 SQL Database 將完整資料庫備份儲存至 Azure 儲存體,以供長期備份保留。 對於受控執行個體,您也可以執行僅供拷貝的備份來實現長期備份保留。

  • 時間點還原

    所有 SQL Database 部署選項均支援復原到任何資料庫自動備份保留期間內的任何時間點。

  • 主動式異地複寫

    單一資料庫和集區資料庫選項可供在相同或分散於全球的 Azure 資料中心最多設定四個可讀取的次要資料庫。 例如,如果您有一個 SaaS 應用程式的目錄資料庫,其具有大量並行唯讀交易,則建議使用主動異地複寫功能以啟用全球讀取擴展能力,並消除由於讀取工作負載而導致主伺服器上的瓶頸。

  • 容錯移轉群組

    所有 SQL Database 部署選項均可供使用容錯移轉群組來啟用全球規模的高可用性和負載平衡。 容錯移轉群組允許對大型資料庫集和彈性集區進行透明的異地複寫和容錯移轉。 容錯移轉群組使建立分散於全球的 SaaS 應用程式成為可能,並且管理負擔極小。 這可讓 SQL Database 處理所有複雜的監視、路由傳送及容錯移轉協調流程。

  • 地區冗餘資料庫

    SQL Database 可讓您跨多個可用性區域佈建進階或業務關鍵資料庫或彈性集區。 由於這些資料庫和彈性集區有多個備援複本可提供高可用性,因此將這些複本放入多個可用性區域即可提供更高的復原能力。 你可以利用這些副本自動從資料中心規模故障中恢復,且不會遺失資料。

內建智慧

使用 SQL 資料庫時,你會獲得內建的智慧,大幅降低管理資料庫的成本。 它能最大化應用程式的效能與安全性。 SQL Database 平台收集和處理大量的遙測資料,同時完全尊重客戶隱私權。 各種演算法會持續評估遙測資料,讓服務能夠了解應用程式並隨其調整。

自動的效能監視和微調

SQL Database 會提供您需要監視之查詢的詳細解析。 SQL Database 會了解資料庫模式,並可供根據自己的工作負載調整資料庫結構描述。 SQL Database 提供效能微調建議,您可以在其中檢閱微調動作並加以套用。

即使使用 SQL Database 和 Azure 提供的所有可用工具和報表,都可能無法有效率地管理大量資料庫。 與其手動監控和調整資料庫,不如考慮透過 自動調整,將部分監控與調整任務委派給 SQL 資料庫。 SQL Database 會自動套用建議、測試及驗證每個調整動作,以確保持續改善效能。 如此一來,SQL Database 會以受控制且安全的方式自動根據工作負載進行調整。 自動調整表示在每個調整動作前後,資料庫效能都會受到仔細的監控和比較。 如果效能沒有改善,調整將會被恢復到原狀。

我們許多在 SQL 資料庫上運行 SaaS 多租戶應用程式 的合作夥伴,依賴自動效能調校,確保他們的應用程式始終穩定且可預測的效能。 對他們而言,這項功能可大幅降低在夜間發生效能問題的風險。 此外,由於其部分客戶也使用 SQL Server,因此合作夥伴會使用 SQL Database 所提供的相同索引建議來協助其 SQL Server 客戶。

SQL Database 中可用的自動調整層面有兩個:

  • 自動索引管理:識別你應該新增到資料庫的索引,以及應該移除的索引。
  • 自動計劃修正:識別有問題的計劃並修正 SQL 計劃效能問題。

自適性查詢處理

您可使用自適性查詢處理,包括交錯執行多重陳述式資料表值函式、批次模式記憶體授與回饋,以及批次模式自適性聯結。 每個自適性查詢處理功能都會應用類似的「了解並適應」技術,協助進一步解決與過去很棘手的查詢最佳化問題相關效能問題。

進階安全性與合規性

SQL Database 提供了各式各樣的內建安全性與合規性功能,協助您的應用程式符合各種安全性與合規性需求。

重要

已認證 Azure SQL Database(所有部署選項)的 Microsoft 符合多項合規性標準。 如需詳細資訊,請參閱 Microsoft Azure 信任中心,您可在當中找到 SQL Database 合規性認證的最新清單。

進階威脅防護

適用於 SQL 的 Microsoft Defender 是進階 SQL 安全性功能的整合套件。 它包含管理資料庫漏洞及偵測異常活動的功能,這些活動可能顯示資料庫受到威脅。 此套件可讓您從單一點位置啟用及管理前述功能。

  • 弱點評量

    這個服務可以探索、追蹤並協助您修復潛在的資料庫弱點。 它提供安全狀態的可視化,並包含可行步驟以解決安全問題及強化資料庫防護。

  • 威脅偵測

    這項功能可偵測異常活動,指出不尋常且可能有害的嘗試存取或利用您的資料庫。 進階威脅防護會持續監視您的資料庫是否有可疑活動,並在發現潛在弱點、SQL 插入式攻擊和異常資料庫存取模式時提供即時安全性警示。 威脅防護警示會提供可疑活動的詳細資料,以及如何調查並降低威脅的建議。

合規性和安全性稽核

稽核會追蹤資料庫事件,並將它們寫入至您 Azure 儲存體帳戶中的稽核記錄。 稽核可協助您保持法規合規性、了解資料庫活動,以及取得可能指出商務考量或疑似安全違規的不一致和異常見解。

資料加密

SQL Database 透過提供加密來協助保護您的資料。 針對移動中的資料,其會使用傳輸層安全性。 針對靜態資料,其會使用透明資料加密。 針對使用中的資料,會使用 Always Encrypted

資料探索與分類

資料探索與分類提供內建於 Azure SQL Database 中的功能,可用來探索、分類、標記及保護資料庫中的敏感資料。 可檢視資料庫的分類狀態,追蹤對資料庫內及超出其邊界的敏感資料存取情況。

Microsoft Entra 整合與多重驗證

SQL 資料庫可透過 Microsoft Entra 整合集中管理資料庫使用者及其他 Microsoft 服務的身分識別。 這項功能簡化了權限管理並增強安全性。 Microsoft Entra ID (以前稱為 Azure Active Directory) 支援多重要素驗證,以提高資料和應用程式安全性,同時支援單一登入程序。

易於使用的工具

SQL Database 讓應用程式的建置及維護更簡易也更有生產力。 SQL Database 讓您將精力集中於拿手項目:建置絕佳的應用程式。 您可使用已經擁有的工具和技能,在 SQL Database 中進行管理和開發。

工具 描述
Azure 入口網站 Web 應用程式,用於管理所有 Azure 服務。
SQL Server 管理工作室 可下載的免費用戶端應用程式,其用於管理任何 SQL 基礎結構 (從 SQL Server 到 SQL Database)。
Visual Studio 中的 SQL Server Data Tools 一個用於 SQL Database、Integration Services 套件、Analysis Services 資料模型和 Reporting Services 報表的開發工具。
Visual Studio 程式碼 可下載的免費開放原始碼程式碼編輯器,其適用於 Windows、macOS 和 Linux。 它支援延伸模組,包括用於查詢 Microsoft SQL Server、Azure SQL 資料庫和 Azure Synapse Analytics 的 MSSQL 延伸模組

SQL Database 支援在 macOS、Linux 和 Windows 上使用 Python、Java、Node.js、PHP、Ruby 和 .NET 建置應用程式。 SQL Database 支援與 SQL Server 相同的連線庫

使用 Azure 入口網站建立 Azure SQL 資源

Azure 入口網站提供單一頁面來建立 Azure SQL 資源。 從 aka.ms/azuresqlhub 開始:

  • Azure SQL 中樞是 Azure SQL 資料庫Azure SQL 資料庫超大規模、Azure SQL 受控執行個體Azure 虛擬機器上的 SQL Server 的啟動點。

  • Azure SQL 中心包含「 哪個資料庫最適合你?」 以及 「並排比較資料庫 」的資訊輔助工具。

    • 「取得推薦」向導會問你一些關鍵決策點的問題,並幫助你找出最適合建立的新資源。

      來自 Azure 入口網站 [尋找正確選項精靈] 的螢幕擷取畫面。

    • 產品 比較 提供各個方面的關鍵產品功能及 創建按鈕,以協助您開始使用。

      Azure 入口網站 Azure SQL 產品比較頁面的螢幕擷取畫面。

使用 Azure 入口網站管理 Azure SQL 資源

若要存取 [Azure SQL] 頁面,請從 Azure 入口網站功能表中選取 [Azure SQL],或在任何頁面中搜尋並選取 [Azure SQL]。

Azure 入口網站提供單一頁面,您可以在其中管理 所有的 Azure SQL 資源,其中包括 Azure 虛擬機器 (VM) 上的 SQL Server。 若要管理現有的資源,請在清單中選取所需的項目。

注意

Azure SQL 可讓您輕鬆快速地存取您在 Azure 入口網站中的所有 SQL 資源,包括 Azure SQL 資料庫和其裝載所在的邏輯伺服器、Azure SQL 受控執行個體和 Azure VM 上的 SQL Server。 Azure SQL 不是一個服務或資源,而是一個與 SQL 相關的服務家族。

SQL Database 常見問題集

我是否能夠控制系統修補導致的停機時間?

維護期間功能可讓您針對 Azure SQL Database 中的合格資料庫,設定可預測的維護期間排程。 維護時間窗口事先通知適用於設定為使用非預設維護時間窗口的資料庫。

我要如何規劃維護事件?

如果您在應用程式中採用重試邏輯,則幾乎不會察覺到程式已經過修補。 如需詳細資訊,請參閱規劃 Azure SQL Database 的 Azure 維護事件

我可以存取我的備份嗎?

Azure SQL Database 備份會自動管理。 沒有人可以直接存取備份。 設定的保留期限到期后,就會刪除備份。 如需詳細資訊,請參閱 Azure SQL Database 中的自動備份長期保留

洽詢 SQL Server 工程團隊