SQL Server 兼容級別
我繼承了一個帶有 SQL Server 2012 企業版的數據庫伺服器。所有數據庫(系統數據庫除外)都在 90 兼容級別。
我如何證明將它們更新到 110 兼容級別?
讓我重新表述我的問題:
伺服器升級到 SQL 2012 但使用者數據庫的兼容級別沒有更新到 110。所以 tempdb 等系統數據庫是 110 但使用者數據庫仍然是 90。我想將它們全部更新到兼容級別 110。我希望它很簡單作為 ALTER 數據庫兼容級別。:) 但我需要證明使用資源來徹底測試應用程序是合理的。
我是否正確地說,即使系統數據庫的兼容性級別為 110,但使用者數據庫並沒有從 SQL Server 2012 中受益?這意味著數據庫沒有真正升級?
謝謝!
當使用備份還原方法或通過附加/分離過程升級數據庫時,數據庫的兼容性級別不會自動更改,並顯示為舊版本。等級。但這不是主要問題,但需要注意的是,您可能無法使用新升級的 SQL Server 上提供的各種功能。
正如 owen 所提到的,您應該參考 MSDN 文件以參考Compatibility-level 設置為 100 或更低的
*with*
Compatibility-level 設置至少為 110之間的差異。此外,執行升級顧問將幫助您在進行升級或更改兼容性級別時辨識任何問題。
如果你有測試環境,你可以在對產品進行任何更改之前測試場景,一旦你準備好了,只需確保你在生產伺服器上擁有最新的系統數據庫備份。如果出現任何問題,您可以從備份中恢復或回滾。
另外,請在此處閱讀壞習慣:堅持舊的兼容性級別
兼容性級別可以啟用新的查詢引擎功能(例如,SQL 2012+ 中提供的 Windows 功能增強功能)。將數據庫保留在較舊的兼容級別很好,不會有任何問題,但您可以更改為最新支持的兼容級別以訪問新功能。
查看ALTER DATABASE Compatibility Level (Transact-SQL)了解更多詳細資訊,尤其是關於兼容性級別的差異。如果其中有任何東西會破壞您的應用程序,請暫時將數據庫保持在兼容級別 90。