SQL Server 2016 introduces two new options to ALTER DATABASE statement which can be used to modify database files namely AUTOGROW_SINGLE_FILE and AUTOGROW_ALL_FILES. In the earlier versions of SQL Server to achieve similar functionality you could use the trace flag 1117. This would allow all the files of the database to auto grow at the same time if they are configured files to auto grow.
This is Part 7 of 10 Part T-SQL Enhancements in SQL Server 2016 for Developers and DBAs. Click here to read it from the beginning….
One of the biggest disadvantages of using trace flag 1117 is that in the event of auto growth all the files of the database will grow. Since this trace flag is set at global level, all the databases residing on the SQL Server Instance will auto grow as per the relevant auto growth settings configured for each database file. This scenario would result in filling drive space faster.
AUTOGROW_ALL_FILES: You must choose this option if you wish to grow all the DATA and LOG files within the FILE GROUP equally. However, as a best practice one should always grow files in fixed sizes in MB or GB rather than fixed percentages as this would result in performance issues and would also result in filing the drives quickly than expected. For more information, see Configure Database Instant File Initialization Feature in SQL Server.
Example ALTER DATABASE SET AUTOGROW_ALL_FILES
ALTER DATABASE Adventureworks MODIFY FILEGROUP [PRIMARY] AUTOGROW_ALL_FILES GO
Trending SQL Server Articles and Tips
- Different SQL Server Recovery Models Step by Step Tutorial with Examples
- ALTER DATABASE SET AUTOGROW_ALL_FILES T-SQL Enhancement in SQL Server 2016
- Configure Network Drive Visible for SQL Server During Backup and Restore Using SSMS
- SQL Server BULK-LOGGED Recovery Model Step by Step Tutorial with Examples
- FORMAT SQL Server Dates Using FORMAT Function in SQL Server
Click the Next Page button to continue reading about New T-SQL enhancements in SQL Server 2016 and click on the Previous Page button to revise the previously read topic.
- COMPRESS and DECOMPRESS Functions
- STRING_SPLIT and STRING_ESCAPE Functions
- FORMATMESSAGE Statement
- SERVERPROPERTY Function
- TRUNCATE TABLE WITH PARTITIONS
- DROP IF EXISTS
- ALTER TABLE WITH (ONLINE = ON | OFF)
- MAXDOP for DBCC CHECKDB, DBCC CHECKTABLE and DBCC CHECKFILEGROUP
- ALTER DATABASE SET AUTOGROW_SINGLE_FILE
- ALTER DATABASE SET AUTOGROW_ALL_FILES