跟蹤標記:1117sql
功能:數據庫
用途:sqlserver
主要用於tempdb性能的優化,解釋以下:性能
備註:優化
在SQL Server 2016裏,跟蹤標記1117已經再也不生效,功能被以下SQL語句所代替spa
ALTER DATABASE [Database_Name] MODIFY FILEGROUP [FileGroup_Name] AUTOGROW_ALL_FILES; --自定義文件組,默認爲AUTOGROW_SINGLE_FILE
跟蹤標記:1118code
功能:orm
用途:server
主要用於tempdb性能的優化,解釋以下:對象
備註:
在SQL Server 2016裏,跟蹤標記1118已經再也不生效,功能被以下SQL語句所代替
ALTER DATABASE [Database_Name] SET MIXED_PAGE_ALLOCATION OFF --自定義數據庫,默認即爲OFF,不使用混合區
小結:
對於tempdb的優化,一般會配置多個數據文件,以及開啓1118跟蹤標記,而1117更像是在文件增加方式上,對這二者的補充。
從SQL Server 2016開始:
(1) 對於1117,1118這兩個跟蹤標記再也不生效,但有了文件組/數據庫選項,粒度更小,而不用像以前那樣,開啓全局的跟蹤標記(對全部數據庫生效),更爲方便控制;
(2) 對於tempdb,文件增加:默認爲文件組內所有增加;空間分配:默認爲不使用混合區;
use tempdb select * from sys.filegroups --is_autogrow_all_files --1 select * from sys.databases where name = 'tempdb' --is_mixed_page_allocation_on --0
(3) 對於用戶新建的數據庫,文件增加:默認爲文件組內單個文件增加,和之前同樣;空間分配:默認爲不使用混合區;
use DBA select * from sys.filegroups --is_autogrow_all_files --0 select * from sys.databases where name = 'DBA' --is_mixed_page_allocation_on --0
(4) 另外在安裝SQL Server 2016時,還根據CPU核數動態設置了tempdb的文件數,因此到了SQL Server 2016,tempdb的優化選項幾乎所有采用默認便可。
參考:
SQL Server 2016 – Trace Flag 1117 Changes
http://www.sqlservergeeks.com/sql-server-2016-trace-flag-1117-changes/
Working with tempdb in SQL Server 2005
https://technet.microsoft.com/en-us/library/cc966545.aspx
kb/328551
https://support.microsoft.com/en-us/kb/328551
kb/2154845
https://support.microsoft.com/en-us/kb/2154845
Trace Flags (Transact-SQL)
https://msdn.microsoft.com/en-us/library/ms188396.aspx
Trace Flags 1117, 1118, and Tempdb Configuration
https://www.brentozar.com/archive/2014/06/trace-flags-1117-1118-tempdb-configuration/
《Fast Track Data Warehouse 2.0 Architecture.docx》