了解相容性層級

已完成

在過去,組建 SQL Server 軟體的軟體廠商會認證其軟體可在特定版本的資料庫引擎上執行。 例如,SharePoint 2016 僅認證可在 SQL Server 2014 上執行。 此程序稱為相容性認證,可讓應用程式在最新版的 SQL Server 上運行,同時維護其廠商支援的相容性層級。

SQL Server 相容性層級一律屬於資料庫層級設定。 將相容性層級設定為特定版本,可允許其使用特定的 T-SQL 關鍵字,因為關鍵字也會決定特定查詢的最佳化工具行為。 例如,如果您具有特定相容性層級的資料庫,並將其移轉至 SQL Server 2019,如果是支援的版本,則執行計畫圖形和查詢語法應維持與移轉前相同。

Azure SQL Database 和 Azure SQL 受控執行個體的資料庫引擎版本與 SQL Server 內部組建編號不相等,但會參考相同的相容性層級。

您可以執行查詢以檢查資料庫的相容性層級,如下所示:

SELECT name, compatibility_level FROM sys.databases;

SQL Server 的支援原則

Microsoft 針對 SQL Server 具有寬鬆的支援原則。 版本提供 5 年的主要支援,並享有額外 5 年的延伸支援。 在前五年中,Microsoft 會為所有版本更新增強功能、縮小功能差距,並解決效能、功能和安全性錯誤。 在版本進入延伸支援階段後,Microsoft 只會解決安全性錯誤。

採用最新版的 SQL Server 有許多優點,包括下列類別的增強功能:

  • 效能
  • 安全性
  • 可用性
  • 查詢功能

這些優勢將隨著 SQL Server 一到兩年的發行步調持續改善,而且 Azure SQL Database 服務會自動新增功能並套用修正,永遠不需要進行修補或升級。

Microsoft 已建議應用程式廠商在特定相容性層級為應用程式進行認證,而不是針對特定軟體版本進行認證。 這種方法可協助客戶利用較新版本的 SQL Server 功能,同時維持應用程式的廠商支援。

Microsoft 包含查詢計劃圖形保護,這表示您的查詢執行計畫及其效能應該與類似硬體上幾乎相同。 這項功能會移除升級 SQL Server 的其中一個主要風險:最佳化工具變更所導致的查詢效能降低。 Microsoft 仍建議您盡可能升級至較新的相容性層級,但只要您執行的 SQL Server 版本是支援的 SQL Server 版本,舊版相容性層級上的資料庫依然會受到支援。

深入了解支援的相容性層級