程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> SQL Server 2016的數據庫范圍內的配置

SQL Server 2016的數據庫范圍內的配置

編輯:關於SqlServer

SQL Server 2016真的讓人眼前一亮。幾天前微軟就提供了RCO(候選發布版)版本的下載。我已經圍觀了一圈RCO版本,其中一個最拽的功能是數據庫范圍內的配置(Database Scoped Configuration),在今天的文章裡我想談談它。補充幾句:裝好之後,居然發現沒有SSMS,崩潰中,原來是在向導中就有獨立的安裝程序,好吧!

這配色,真是低調有內涵。

另外,如過你的電腦已經安裝了就【Microsoft Visual Studio 2010 Shell(獨立)Redistributable Package 】,卸載掉吧,好像會影響SSMS的安裝。

啟動畫面。

登錄界面。

數據庫范圍內的配置

我們知道,SQL Server有很多配置選項只能在SQL Server實例級別進行全局配置。例如MAXDOP選項(當你不使用資源調控器時)。另外微軟提供我們大量不同的跟蹤標記(Trace Flags)可以修改SQL Server的內部行為。微軟現在最終宣布這些領域,SQL Server 2016會為我們提供現存的配置選項,在數據庫級別就可以配置,而不使用特定的跟蹤標記(Trace Flags)。

我們來詳細看下它們。使用早期參數估計(Legacy Cardinality Estimation )選項,你可以控制SQL Server是否使用老的還是SQL Server 2014裡引入的新的參數估計。這是個新的配置選項,以前可以通過2312和9481跟蹤標記來實現。

MAXDOP選項就不用解釋了!終於你可以在數據庫級別控制MAXDOP!這真的太拽了!尤其對於Sharepoint。我來看看SharePoint的後續版本會不會支持數據庫級別的MAXDOP...對了,我已經很期待在數據庫級別1的MAXDOP的數據庫,來回避可惡的CXPACKET等待。

參數探查( Parameter Sniffing)!微軟稱它為特色,我叫它為BUG,通常來說參數探查是個好事,因為查詢優化器基於你首次提供的輸入值來編譯查詢計劃。這很棒,但缺點是生成的查詢計劃對提供輸入參數敏感,且只對那些參數進行優化。如果你後來用不同的參數值重用緩存的查詢計劃,就會影響你的性能。

只用這個配置選項,現在你可以控制查詢優化器是否使用參數探查。它可以用來替換4136跟蹤標記。如果你禁用參數探查,當你使用OPTIMIZE FOR UNKNOWN查詢提示時,SQL Server內部使用同樣的行為——它不會給你優化的性能,但會給你一致的性能……

最後你有查詢優化修補程序(Query Optimizer Fixes configuration option)。這個配置選項啟用或停用一些特定的查詢修補程序,它用來代替跟蹤標記4199。

小結

我真的很喜歡數據庫范圍內的配置!尤其是MAXDOP選項。對於Sharepoint來說,它是個巨大的優勢,如果我們只針對運行Sharepoint的特定數據庫使用1的MAXDOP,剩下的一切會比配置實例的MAXDOP好很多。

對於這些新的配置選項,你覺得如何?喜歡它們麼?請盡情留言。

感謝關注!

參考文章:

https://www.sqlpassion.at/archive/2016/03/14/database-scoped-configuration-in-sql-server-2016/

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved